#ifndef MODBUSCONTROL_H
#define MODBUSCONTROL_H

#include <QObject>

#include <QModbusClient>
#include <QModbusRequest>
#include <QModbusDevice>
#include <QModbusDataUnit>
#include <QModbusRtuSerialClient>
#include <QSerialPort>
#include <QByteArray>
#include <QStringList>
#include <QTime>
#include <QDate>
#include <QTimer>
#include <QMutex>

#include "Mid_Struct.h"

class ModbusControl : public QObject
{
    Q_OBJECT    

    // 当前页码
    Q_PROPERTY(int QML_CurrentPage READ QML_CurrentPage WRITE setQML_CurrentPage NOTIFY QML_CurrentPageChanged FINAL)

    // 锁机标志位
    Q_PROPERTY(bool LockMechine_Flag READ LockMechine_Flag WRITE setLockMechine_Flag NOTIFY LockMechine_FlagChanged FINAL)

    //
    // 手动加工界面
    //
    // 手动测量值 D106
    Q_PROPERTY(QString MaterialHeightObservedValue READ MaterialHeightObservedValue WRITE setMaterialHeightObservedValue NOTIFY MaterialHeightObservedValueChanged FINAL)
    // 当前位置 D196
    Q_PROPERTY(QString CurrentLocationValue READ CurrentLocationValue WRITE setCurrentLocationValue NOTIFY CurrentLocationValueChanged FINAL)
    // 手动料长 D212
    Q_PROPERTY(QString MaterialLengthValue READ MaterialLengthValue WRITE setMaterialLengthValue NOTIFY MaterialLengthValueChanged FINAL)
    // 手动料高 D214
    Q_PROPERTY(QString MaterialHeightValue READ MaterialHeightValue WRITE setMaterialHeightValue NOTIFY MaterialHeightValueChanged FINAL)
    // 电机旋钮位置 D229  (锯片模式 是否联动)
    Q_PROPERTY(QString SawsMode READ SawsMode WRITE setSawsMode NOTIFY SawsModeChanged FINAL)
    // 手动段数 D230
    Q_PROPERTY(QString CutSegments READ CutSegments WRITE setCutSegments NOTIFY CutSegmentsChanged FINAL)
    // 当前段数 D231
    Q_PROPERTY(QString CurrentSegments READ CurrentSegments WRITE setCurrentSegments NOTIFY CurrentSegmentsChanged FINAL)
    // 料高测量中 M109
    Q_PROPERTY(bool ObservingState READ ObservingState WRITE setObservingState NOTIFY ObservingStateChanged FINAL)
    // 压紧中 M239
    Q_PROPERTY(bool ImpactState READ ImpactState WRITE setImpactState NOTIFY ImpactStateChanged FINAL)
    // 锯片启动中 M240
    Q_PROPERTY(bool SawsStartState READ SawsStartState WRITE setSawsStartState NOTIFY SawsStartStateChanged FINAL)
    // 锯片工进中 M241
    Q_PROPERTY(bool SawsOutState READ SawsOutState WRITE setSawsOutState NOTIFY SawsOutStateChanged FINAL)
    // 左机头角度反馈 M390
    Q_PROPERTY(bool LeftAngleFeedBack READ LeftAngleFeedBack WRITE setLeftAngleFeedBack NOTIFY LeftAngleFeedBackChanged FINAL)
    // 右机头角度反馈 M391
    Q_PROPERTY(bool RightAngleFeedBack READ RightAngleFeedBack WRITE setRightAngleFeedBack NOTIFY RightAngleFeedBackChanged FINAL)
    // 自动测料高功能 M396
    Q_PROPERTY(bool AutoObserveState READ AutoObserveState WRITE setAutoObserveState NOTIFY AutoObserveStateChanged FINAL)
    // 左机头后位 X12
    Q_PROPERTY(bool IO_X12 READ IO_X12 WRITE setIO_X12 NOTIFY IO_X12Changed FINAL)
    // 右机头后位 X13
    Q_PROPERTY(bool IO_X13 READ IO_X13 WRITE setIO_X13 NOTIFY IO_X13Changed FINAL)
    // 左机头前位 X14
    Q_PROPERTY(bool IO_X14 READ IO_X14 WRITE setIO_X14 NOTIFY IO_X14Changed FINAL)
    // 右机头前位 X15
    Q_PROPERTY(bool IO_X15 READ IO_X15 WRITE setIO_X15 NOTIFY IO_X15Changed FINAL)
    // 原点值 D210
    Q_PROPERTY(QString OriginValue READ OriginValue WRITE setOriginValue NOTIFY OriginValueChanged FINAL)
    // 最大切割长度 D216
    Q_PROPERTY(QString MaxCutLength READ MaxCutLength WRITE setMaxCutLength NOTIFY MaxCutLengthChanged FINAL)
    // 内摆安全位置 D1394
    Q_PROPERTY(QString Angle45SafeDistance READ Angle45SafeDistance WRITE setAngle45SafeDistance NOTIFY Angle45SafeDistanceChanged FINAL)
    // 机器摆动角度方式 (内摆 外摆)  M394
    Q_PROPERTY(bool MechineChangeAngleMode READ MechineChangeAngleMode WRITE setMechineChangeAngleMode NOTIFY MechineChangeAngleModeChanged FINAL)
    // 手动料长上限
    Q_PROPERTY(QString Manual_MaterialLengthMax READ Manual_MaterialLengthMax WRITE setManual_MaterialLengthMax NOTIFY Manual_MaterialLengthMaxChanged FINAL)
    // 手动料长下限
    Q_PROPERTY(QString Manual_MaterialLengthMin READ Manual_MaterialLengthMin WRITE setManual_MaterialLengthMin NOTIFY Manual_MaterialLengthMinChanged FINAL)



    //
    // 超长加工界面
    //
    // 当前段数 D231    CurrentSegments
    // 手动料高 D214    MaterialHeightValue
    // 最大切割长度 D216  MaxCutLength
    // 原点值 D210   OriginValue
    // 电机旋钮位置 D229  (锯片模式 是否联动)  SawsMode
    // 内摆安全位置 D1394   Angle45SafeDistance
    // 超长料长 D226
    Q_PROPERTY(QString ExtraLong_MaterialLengthValue READ ExtraLong_MaterialLengthValue WRITE setExtraLong_MaterialLengthValue NOTIFY ExtraLong_MaterialLengthValueChanged FINAL)
    // 超长补偿 D1382
    Q_PROPERTY(QString ExtraLong_CompensateValue READ ExtraLong_CompensateValue WRITE setExtraLong_CompensateValue NOTIFY ExtraLong_CompensateValueChanged FINAL)
    // 超长料长上限
    Q_PROPERTY(QString ExtraLong_MaterialLengthMax READ ExtraLong_MaterialLengthMax WRITE setExtraLong_MaterialLengthMax NOTIFY ExtraLong_MaterialLengthMaxChanged FINAL)
    // 超长料长下限
    Q_PROPERTY(QString ExtraLong_MaterialLengthMin READ ExtraLong_MaterialLengthMin WRITE setExtraLong_MaterialLengthMin NOTIFY ExtraLong_MaterialLengthMinChanged FINAL)



    //
    // 超短加工界面
    //
    // 原点值  D210   OriginValue
    // 手动料高  D214    MaterialHeightValue
    // 电机旋钮位置  D229  (锯片模式 是否联动)  SawsMode
    // 当前段数  D231    CurrentSegments
    // 内摆安全位置 D1394   Angle45SafeDistance
    // 超短料长  D224
    Q_PROPERTY(QString ExtraShort_MaterialLengthValue READ ExtraShort_MaterialLengthValue WRITE setExtraShort_MaterialLengthValue NOTIFY ExtraShort_MaterialLengthValueChanged FINAL)
    // 超短补偿  D1380
    Q_PROPERTY(QString ExtraShort_CompensateValue READ ExtraShort_CompensateValue WRITE setExtraShort_CompensateValue NOTIFY ExtraShort_CompensateValueChanged FINAL)
    // 回拉距离  D1390
    Q_PROPERTY(QString ExtraShort_PullBackDistance READ ExtraShort_PullBackDistance WRITE setExtraShort_PullBackDistance NOTIFY ExtraShort_PullBackDistanceChanged FINAL)
    // 超短料长上限
    Q_PROPERTY(QString ExtraShort_MaterialLengthMax READ ExtraShort_MaterialLengthMax WRITE setExtraShort_MaterialLengthMax NOTIFY ExtraShort_MaterialLengthMaxChanged FINAL)
    // 超短料长下限
    Q_PROPERTY(QString ExtraShort_MaterialLengthMin READ ExtraShort_MaterialLengthMin WRITE setExtraShort_MaterialLengthMin NOTIFY ExtraShort_MaterialLengthMinChanged FINAL)



    //
    // 角码加工界面
    //
    // 角码当前段数  D1270 【16】
    Q_PROPERTY(QString Corner_Current_Segments READ Corner_Current_Segments WRITE setCorner_Current_Segments NOTIFY Corner_Current_SegmentsChanged FINAL)
    // 角码累计段数  D1271 【16】
    Q_PROPERTY(QString Corner_Worked_Segments READ Corner_Worked_Segments WRITE setCorner_Worked_Segments NOTIFY Corner_Worked_SegmentsChanged FINAL)
    // 角码最短料长  D1292
    Q_PROPERTY(QString Corner_Min_Length READ Corner_Min_Length WRITE setCorner_Min_Length NOTIFY Corner_Min_LengthChanged FINAL)
    // 原料长度     D1276
    Q_PROPERTY(QString Corner_Material_Length READ Corner_Material_Length WRITE setCorner_Material_Length NOTIFY Corner_Material_LengthChanged FINAL)
    // 角码刀补     D1274
    Q_PROPERTY(QString Corner_Cut_Compensate READ Corner_Cut_Compensate WRITE setCorner_Cut_Compensate NOTIFY Corner_Cut_CompensateChanged FINAL)
    // 角码长度     D1272
    Q_PROPERTY(QString Corner_Length READ Corner_Length WRITE setCorner_Length NOTIFY Corner_LengthChanged FINAL)
    // 角码设定段数  D228
    Q_PROPERTY(QString Corner_Set_Segments READ Corner_Set_Segments WRITE setCorner_Set_Segments NOTIFY Corner_Set_SegmentsChanged FINAL)
    // 角码设定错误  M114
    Q_PROPERTY(bool Corner_Set_Err READ Corner_Set_Err WRITE setCorner_Set_Err NOTIFY Corner_Set_ErrChanged FINAL)


    //
    // 本地排料加工界面
    //
    // 循环状态进行中
    Q_PROPERTY(QString Circle_Runing_State READ Circle_Runing_State WRITE setCircle_Runing_State NOTIFY Circle_Runing_StateChanged FINAL)
    // 循环模式开关
    Q_PROPERTY(QString Circle_Mode READ Circle_Mode WRITE setCircle_Mode NOTIFY Circle_ModeChanged FINAL)
    // 排料加工序号 D192
    Q_PROPERTY(QString Order_Number_Circle READ Order_Number_Circle WRITE setOrder_Number_Circle NOTIFY Order_Number_CircleChanged FINAL)
    // 电机旋钮位置 D229  (锯片模式 是否联动)  SawsMode
    // 排料序号 - 排料加工界面 D76  【16】
    Q_PROPERTY(QString OrderNumber_OrderProcess READ OrderNumber_OrderProcess WRITE setOrderNumber_OrderProcess NOTIFY OrderNumber_OrderProcessChanged FINAL)
    // 已加工数量1  D1500
    Q_PROPERTY(QString WorkedCount_01_OrderProcess READ WorkedCount_01_OrderProcess WRITE setWorkedCount_01_OrderProcess NOTIFY WorkedCount_01_OrderProcessChanged FINAL)
    // 已加工数量2  D1501
    Q_PROPERTY(QString WorkedCount_02_OrderProcess READ WorkedCount_02_OrderProcess WRITE setWorkedCount_02_OrderProcess NOTIFY WorkedCount_02_OrderProcessChanged FINAL)
    // 已加工数量3  D1502
    Q_PROPERTY(QString WorkedCount_03_OrderProcess READ WorkedCount_03_OrderProcess WRITE setWorkedCount_03_OrderProcess NOTIFY WorkedCount_03_OrderProcessChanged FINAL)
    // 已加工数量4  D1503
    Q_PROPERTY(QString WorkedCount_04_OrderProcess READ WorkedCount_04_OrderProcess WRITE setWorkedCount_04_OrderProcess NOTIFY WorkedCount_04_OrderProcessChanged FINAL)
    // 已加工数量5  D1504
    Q_PROPERTY(QString WorkedCount_05_OrderProcess READ WorkedCount_05_OrderProcess WRITE setWorkedCount_05_OrderProcess NOTIFY WorkedCount_05_OrderProcessChanged FINAL)
    // 已加工数量6  D1505
    Q_PROPERTY(QString WorkedCount_06_OrderProcess READ WorkedCount_06_OrderProcess WRITE setWorkedCount_06_OrderProcess NOTIFY WorkedCount_06_OrderProcessChanged FINAL)
    // 已加工数量7  D1506
    Q_PROPERTY(QString WorkedCount_07_OrderProcess READ WorkedCount_07_OrderProcess WRITE setWorkedCount_07_OrderProcess NOTIFY WorkedCount_07_OrderProcessChanged FINAL)
    // 已加工数量8  D1507
    Q_PROPERTY(QString WorkedCount_08_OrderProcess READ WorkedCount_08_OrderProcess WRITE setWorkedCount_08_OrderProcess NOTIFY WorkedCount_08_OrderProcessChanged FINAL)
    // 已加工数量9  D1508
    Q_PROPERTY(QString WorkedCount_09_OrderProcess READ WorkedCount_09_OrderProcess WRITE setWorkedCount_09_OrderProcess NOTIFY WorkedCount_09_OrderProcessChanged FINAL)
    // 已加工数量10 D1509
    Q_PROPERTY(QString WorkedCount_10_OrderProcess READ WorkedCount_10_OrderProcess WRITE setWorkedCount_10_OrderProcess NOTIFY WorkedCount_10_OrderProcessChanged FINAL)
    // 已加工数量11 D1510
    Q_PROPERTY(QString WorkedCount_11_OrderProcess READ WorkedCount_11_OrderProcess WRITE setWorkedCount_11_OrderProcess NOTIFY WorkedCount_11_OrderProcessChanged FINAL)
    // 已加工数量12 D1511
    Q_PROPERTY(QString WorkedCount_12_OrderProcess READ WorkedCount_12_OrderProcess WRITE setWorkedCount_12_OrderProcess NOTIFY WorkedCount_12_OrderProcessChanged FINAL)
    // 已加工数量13 D1512
    Q_PROPERTY(QString WorkedCount_13_OrderProcess READ WorkedCount_13_OrderProcess WRITE setWorkedCount_13_OrderProcess NOTIFY WorkedCount_13_OrderProcessChanged FINAL)
    // 已加工数量14 D1513
    Q_PROPERTY(QString WorkedCount_14_OrderProcess READ WorkedCount_14_OrderProcess WRITE setWorkedCount_14_OrderProcess NOTIFY WorkedCount_14_OrderProcessChanged FINAL)
    // 已加工数量15 D1514
    Q_PROPERTY(QString WorkedCount_15_OrderProcess READ WorkedCount_15_OrderProcess WRITE setWorkedCount_15_OrderProcess NOTIFY WorkedCount_15_OrderProcessChanged FINAL)
    // 已加工数量16 D1515
    Q_PROPERTY(QString WorkedCount_16_OrderProcess READ WorkedCount_16_OrderProcess WRITE setWorkedCount_16_OrderProcess NOTIFY WorkedCount_16_OrderProcessChanged FINAL)
    // 已加工数量17 D1516
    Q_PROPERTY(QString WorkedCount_17_OrderProcess READ WorkedCount_17_OrderProcess WRITE setWorkedCount_17_OrderProcess NOTIFY WorkedCount_17_OrderProcessChanged FINAL)
    // 已加工数量18 D1517
    Q_PROPERTY(QString WorkedCount_18_OrderProcess READ WorkedCount_18_OrderProcess WRITE setWorkedCount_18_OrderProcess NOTIFY WorkedCount_18_OrderProcessChanged FINAL)
    // 已加工数量19 D1518
    Q_PROPERTY(QString WorkedCount_19_OrderProcess READ WorkedCount_19_OrderProcess WRITE setWorkedCount_19_OrderProcess NOTIFY WorkedCount_19_OrderProcessChanged FINAL)
    // 已加工数量20 D1519
    Q_PROPERTY(QString WorkedCount_20_OrderProcess READ WorkedCount_20_OrderProcess WRITE setWorkedCount_20_OrderProcess NOTIFY WorkedCount_20_OrderProcessChanged FINAL)



    //
    // 二维码料单加工界面
    //
    // 机器摆动角度方式 (内摆 外摆)  M394  MechineChangeAngleMode
    // 定位中继 M172
    Q_PROPERTY(bool Location_Rely_ListProcess READ Location_Rely_ListProcess WRITE setLocation_Rely_ListProcess NOTIFY Location_Rely_ListProcessChanged FINAL)
    // 料单当前序号 - 排料加工界面 D77  【16】
    Q_PROPERTY(QString OrderNumber_ListProcess READ OrderNumber_ListProcess WRITE setOrderNumber_ListProcess NOTIFY OrderNumber_ListProcessChanged FINAL)
    // 切割长度01  D1600
    Q_PROPERTY(QString MaterialLength01_ListProcess READ MaterialLength01_ListProcess WRITE setMaterialLength01_ListProcess NOTIFY MaterialLength01_ListProcessChanged FINAL)
    // 切割长度02  D1602
    Q_PROPERTY(QString MaterialLength02_ListProcess READ MaterialLength02_ListProcess WRITE setMaterialLength02_ListProcess NOTIFY MaterialLength02_ListProcessChanged FINAL)
    // 切割长度03  D1604
    Q_PROPERTY(QString MaterialLength03_ListProcess READ MaterialLength03_ListProcess WRITE setMaterialLength03_ListProcess NOTIFY MaterialLength03_ListProcessChanged FINAL)
    // 切割长度04  D1606
    Q_PROPERTY(QString MaterialLength04_ListProcess READ MaterialLength04_ListProcess WRITE setMaterialLength04_ListProcess NOTIFY MaterialLength04_ListProcessChanged FINAL)
    // 切割长度05  D1608
    Q_PROPERTY(QString MaterialLength05_ListProcess READ MaterialLength05_ListProcess WRITE setMaterialLength05_ListProcess NOTIFY MaterialLength05_ListProcessChanged FINAL)
    // 切割长度06  D1610
    Q_PROPERTY(QString MaterialLength06_ListProcess READ MaterialLength06_ListProcess WRITE setMaterialLength06_ListProcess NOTIFY MaterialLength06_ListProcessChanged FINAL)
    // 切割长度07  D1612
    Q_PROPERTY(QString MaterialLength07_ListProcess READ MaterialLength07_ListProcess WRITE setMaterialLength07_ListProcess NOTIFY MaterialLength07_ListProcessChanged FINAL)
    // 切割长度08  D1614
    Q_PROPERTY(QString MaterialLength08_ListProcess READ MaterialLength08_ListProcess WRITE setMaterialLength08_ListProcess NOTIFY MaterialLength08_ListProcessChanged FINAL)
    // 切割长度09  D1616
    Q_PROPERTY(QString MaterialLength09_ListProcess READ MaterialLength09_ListProcess WRITE setMaterialLength09_ListProcess NOTIFY MaterialLength09_ListProcessChanged FINAL)
    // 切割长度10  D1618
    Q_PROPERTY(QString MaterialLength10_ListProcess READ MaterialLength10_ListProcess WRITE setMaterialLength10_ListProcess NOTIFY MaterialLength10_ListProcessChanged FINAL)
    // 切割长度11  D1620
    Q_PROPERTY(QString MaterialLength11_ListProcess READ MaterialLength11_ListProcess WRITE setMaterialLength11_ListProcess NOTIFY MaterialLength11_ListProcessChanged FINAL)
    // 切割长度12  D1622
    Q_PROPERTY(QString MaterialLength12_ListProcess READ MaterialLength12_ListProcess WRITE setMaterialLength12_ListProcess NOTIFY MaterialLength12_ListProcessChanged FINAL)
    // 切割长度13  D1624
    Q_PROPERTY(QString MaterialLength13_ListProcess READ MaterialLength13_ListProcess WRITE setMaterialLength13_ListProcess NOTIFY MaterialLength13_ListProcessChanged FINAL)
    // 切割长度14  D1626
    Q_PROPERTY(QString MaterialLength14_ListProcess READ MaterialLength14_ListProcess WRITE setMaterialLength14_ListProcess NOTIFY MaterialLength14_ListProcessChanged FINAL)
    // 切割长度15  D1628
    Q_PROPERTY(QString MaterialLength15_ListProcess READ MaterialLength15_ListProcess WRITE setMaterialLength15_ListProcess NOTIFY MaterialLength15_ListProcessChanged FINAL)
    // 切割长度16  D1630
    Q_PROPERTY(QString MaterialLength16_ListProcess READ MaterialLength16_ListProcess WRITE setMaterialLength16_ListProcess NOTIFY MaterialLength16_ListProcessChanged FINAL)
    // 切割长度17  D1632
    Q_PROPERTY(QString MaterialLength17_ListProcess READ MaterialLength17_ListProcess WRITE setMaterialLength17_ListProcess NOTIFY MaterialLength17_ListProcessChanged FINAL)
    // 切割长度18  D1634
    Q_PROPERTY(QString MaterialLength18_ListProcess READ MaterialLength18_ListProcess WRITE setMaterialLength18_ListProcess NOTIFY MaterialLength18_ListProcessChanged FINAL)
    // 切割长度19  D1636
    Q_PROPERTY(QString MaterialLength19_ListProcess READ MaterialLength19_ListProcess WRITE setMaterialLength19_ListProcess NOTIFY MaterialLength19_ListProcessChanged FINAL)
    // 切割长度20  D1638
    Q_PROPERTY(QString MaterialLength20_ListProcess READ MaterialLength20_ListProcess WRITE setMaterialLength20_ListProcess NOTIFY MaterialLength20_ListProcessChanged FINAL)
    // 左角度01
    Q_PROPERTY(QString LeftAngle_01_ListProcess READ LeftAngle_01_ListProcess WRITE setLeftAngle_01_ListProcess NOTIFY LeftAngle_01_ListProcessChanged FINAL)
    // 右角度01
    Q_PROPERTY(QString RightAngle_01_ListProcess READ RightAngle_01_ListProcess WRITE setRightAngle_01_ListProcess NOTIFY RightAngle_01_ListProcessChanged FINAL)
    // 左角度02
    Q_PROPERTY(QString LeftAngle_02_ListProcess READ LeftAngle_02_ListProcess WRITE setLeftAngle_02_ListProcess NOTIFY LeftAngle_02_ListProcessChanged FINAL)
    // 右角度02
    Q_PROPERTY(QString RightAngle_02_ListProcess READ RightAngle_02_ListProcess WRITE setRightAngle_02_ListProcess NOTIFY RightAngle_02_ListProcessChanged FINAL)
    // 左角度03
    Q_PROPERTY(QString LeftAngle_03_ListProcess READ LeftAngle_03_ListProcess WRITE setLeftAngle_03_ListProcess NOTIFY LeftAngle_03_ListProcessChanged FINAL)
    // 右角度03
    Q_PROPERTY(QString RightAngle_03_ListProcess READ RightAngle_03_ListProcess WRITE setRightAngle_03_ListProcess NOTIFY RightAngle_03_ListProcessChanged FINAL)
    // 左角度04
    Q_PROPERTY(QString LeftAngle_04_ListProcess READ LeftAngle_04_ListProcess WRITE setLeftAngle_04_ListProcess NOTIFY LeftAngle_04_ListProcessChanged FINAL)
    // 右角度04
    Q_PROPERTY(QString RightAngle_04_ListProcess READ RightAngle_04_ListProcess WRITE setRightAngle_04_ListProcess NOTIFY RightAngle_04_ListProcessChanged FINAL)
    // 左角度05
    Q_PROPERTY(QString LeftAngle_05_ListProcess READ LeftAngle_05_ListProcess WRITE setLeftAngle_05_ListProcess NOTIFY LeftAngle_05_ListProcessChanged FINAL)
    // 右角度05
    Q_PROPERTY(QString RightAngle_05_ListProcess READ RightAngle_05_ListProcess WRITE setRightAngle_05_ListProcess NOTIFY RightAngle_05_ListProcessChanged FINAL)
    // 左角度06
    Q_PROPERTY(QString LeftAngle_06_ListProcess READ LeftAngle_06_ListProcess WRITE setLeftAngle_06_ListProcess NOTIFY LeftAngle_06_ListProcessChanged FINAL)
    // 右角度06
    Q_PROPERTY(QString RightAngle_06_ListProcess READ RightAngle_06_ListProcess WRITE setRightAngle_06_ListProcess NOTIFY RightAngle_06_ListProcessChanged FINAL)
    // 左角度07
    Q_PROPERTY(QString LeftAngle_07_ListProcess READ LeftAngle_07_ListProcess WRITE setLeftAngle_07_ListProcess NOTIFY LeftAngle_07_ListProcessChanged FINAL)
    // 右角度07
    Q_PROPERTY(QString RightAngle_07_ListProcess READ RightAngle_07_ListProcess WRITE setRightAngle_07_ListProcess NOTIFY RightAngle_07_ListProcessChanged FINAL)
    // 左角度08
    Q_PROPERTY(QString LeftAngle_08_ListProcess READ LeftAngle_08_ListProcess WRITE setLeftAngle_08_ListProcess NOTIFY LeftAngle_08_ListProcessChanged FINAL)
    // 右角度08
    Q_PROPERTY(QString RightAngle_08_ListProcess READ RightAngle_08_ListProcess WRITE setRightAngle_08_ListProcess NOTIFY RightAngle_08_ListProcessChanged FINAL)
    // 左角度09
    Q_PROPERTY(QString LeftAngle_09_ListProcess READ LeftAngle_09_ListProcess WRITE setLeftAngle_09_ListProcess NOTIFY LeftAngle_09_ListProcessChanged FINAL)
    // 右角度09
    Q_PROPERTY(QString RightAngle_09_ListProcess READ RightAngle_09_ListProcess WRITE setRightAngle_09_ListProcess NOTIFY RightAngle_09_ListProcessChanged FINAL)
    // 左角度10
    Q_PROPERTY(QString LeftAngle_10_ListProcess READ LeftAngle_10_ListProcess WRITE setLeftAngle_10_ListProcess NOTIFY LeftAngle_10_ListProcessChanged FINAL)
    // 右角度10
    Q_PROPERTY(QString RightAngle_10_ListProcess READ RightAngle_10_ListProcess WRITE setRightAngle_10_ListProcess NOTIFY RightAngle_10_ListProcessChanged FINAL)
    // 左角度11
    Q_PROPERTY(QString LeftAngle_11_ListProcess READ LeftAngle_11_ListProcess WRITE setLeftAngle_11_ListProcess NOTIFY LeftAngle_11_ListProcessChanged FINAL)
    // 右角度11
    Q_PROPERTY(QString RightAngle_11_ListProcess READ RightAngle_11_ListProcess WRITE setRightAngle_11_ListProcess NOTIFY RightAngle_11_ListProcessChanged FINAL)
    // 左角度12
    Q_PROPERTY(QString LeftAngle_12_ListProcess READ LeftAngle_12_ListProcess WRITE setLeftAngle_12_ListProcess NOTIFY LeftAngle_12_ListProcessChanged FINAL)
    // 右角度12
    Q_PROPERTY(QString RightAngle_12_ListProcess READ RightAngle_12_ListProcess WRITE setRightAngle_12_ListProcess NOTIFY RightAngle_12_ListProcessChanged FINAL)
    // 左角度13
    Q_PROPERTY(QString LeftAngle_13_ListProcess READ LeftAngle_13_ListProcess WRITE setLeftAngle_13_ListProcess NOTIFY LeftAngle_13_ListProcessChanged FINAL)
    // 右角度13
    Q_PROPERTY(QString RightAngle_13_ListProcess READ RightAngle_13_ListProcess WRITE setRightAngle_13_ListProcess NOTIFY RightAngle_13_ListProcessChanged FINAL)
    // 左角度14
    Q_PROPERTY(QString LeftAngle_14_ListProcess READ LeftAngle_14_ListProcess WRITE setLeftAngle_14_ListProcess NOTIFY LeftAngle_14_ListProcessChanged FINAL)
    // 右角度14
    Q_PROPERTY(QString RightAngle_14_ListProcess READ RightAngle_14_ListProcess WRITE setRightAngle_14_ListProcess NOTIFY RightAngle_14_ListProcessChanged FINAL)
    // 左角度15
    Q_PROPERTY(QString LeftAngle_15_ListProcess READ LeftAngle_15_ListProcess WRITE setLeftAngle_15_ListProcess NOTIFY LeftAngle_15_ListProcessChanged FINAL)
    // 右角度15
    Q_PROPERTY(QString RightAngle_15_ListProcess READ RightAngle_15_ListProcess WRITE setRightAngle_15_ListProcess NOTIFY RightAngle_15_ListProcessChanged FINAL)
    // 左角度16
    Q_PROPERTY(QString LeftAngle_16_ListProcess READ LeftAngle_16_ListProcess WRITE setLeftAngle_16_ListProcess NOTIFY LeftAngle_16_ListProcessChanged FINAL)
    // 右角度16
    Q_PROPERTY(QString RightAngle_16_ListProcess READ RightAngle_16_ListProcess WRITE setRightAngle_16_ListProcess NOTIFY RightAngle_16_ListProcessChanged FINAL)
    // 左角度17
    Q_PROPERTY(QString LeftAngle_17_ListProcess READ LeftAngle_17_ListProcess WRITE setLeftAngle_17_ListProcess NOTIFY LeftAngle_17_ListProcessChanged FINAL)
    // 右角度17
    Q_PROPERTY(QString RightAngle_17_ListProcess READ RightAngle_17_ListProcess WRITE setRightAngle_17_ListProcess NOTIFY RightAngle_17_ListProcessChanged FINAL)
    // 左角度18
    Q_PROPERTY(QString LeftAngle_18_ListProcess READ LeftAngle_18_ListProcess WRITE setLeftAngle_18_ListProcess NOTIFY LeftAngle_18_ListProcessChanged FINAL)
    // 右角度18
    Q_PROPERTY(QString RightAngle_18_ListProcess READ RightAngle_18_ListProcess WRITE setRightAngle_18_ListProcess NOTIFY RightAngle_18_ListProcessChanged FINAL)
    // 左角度19
    Q_PROPERTY(QString LeftAngle_19_ListProcess READ LeftAngle_19_ListProcess WRITE setLeftAngle_19_ListProcess NOTIFY LeftAngle_19_ListProcessChanged FINAL)
    // 右角度19
    Q_PROPERTY(QString RightAngle_19_ListProcess READ RightAngle_19_ListProcess WRITE setRightAngle_19_ListProcess NOTIFY RightAngle_19_ListProcessChanged FINAL)
    // 左角度20
    Q_PROPERTY(QString LeftAngle_20_ListProcess READ LeftAngle_20_ListProcess WRITE setLeftAngle_20_ListProcess NOTIFY LeftAngle_20_ListProcessChanged FINAL)
    // 右角度20
    Q_PROPERTY(QString RightAngle_20_ListProcess READ RightAngle_20_ListProcess WRITE setRightAngle_20_ListProcess NOTIFY RightAngle_20_ListProcessChanged FINAL)
    // 切割数量01
    Q_PROPERTY(QString CutCount_01_ListProcess READ CutCount_01_ListProcess WRITE setCutCount_01_ListProcess NOTIFY CutCount_01_ListProcessChanged FINAL)
    // 切割数量02
    Q_PROPERTY(QString CutCount_02_ListProcess READ CutCount_02_ListProcess WRITE setCutCount_02_ListProcess NOTIFY CutCount_02_ListProcessChanged FINAL)
    // 切割数量03
    Q_PROPERTY(QString CutCount_03_ListProcess READ CutCount_03_ListProcess WRITE setCutCount_03_ListProcess NOTIFY CutCount_03_ListProcessChanged FINAL)
    // 切割数量04
    Q_PROPERTY(QString CutCount_04_ListProcess READ CutCount_04_ListProcess WRITE setCutCount_04_ListProcess NOTIFY CutCount_04_ListProcessChanged FINAL)
    // 切割数量05
    Q_PROPERTY(QString CutCount_05_ListProcess READ CutCount_05_ListProcess WRITE setCutCount_05_ListProcess NOTIFY CutCount_05_ListProcessChanged FINAL)
    // 切割数量06
    Q_PROPERTY(QString CutCount_06_ListProcess READ CutCount_06_ListProcess WRITE setCutCount_06_ListProcess NOTIFY CutCount_06_ListProcessChanged FINAL)
    // 切割数量07
    Q_PROPERTY(QString CutCount_07_ListProcess READ CutCount_07_ListProcess WRITE setCutCount_07_ListProcess NOTIFY CutCount_07_ListProcessChanged FINAL)
    // 切割数量08
    Q_PROPERTY(QString CutCount_08_ListProcess READ CutCount_08_ListProcess WRITE setCutCount_08_ListProcess NOTIFY CutCount_08_ListProcessChanged FINAL)
    // 切割数量09
    Q_PROPERTY(QString CutCount_09_ListProcess READ CutCount_09_ListProcess WRITE setCutCount_09_ListProcess NOTIFY CutCount_09_ListProcessChanged FINAL)
    // 切割数量10
    Q_PROPERTY(QString CutCount_10_ListProcess READ CutCount_10_ListProcess WRITE setCutCount_10_ListProcess NOTIFY CutCount_10_ListProcessChanged FINAL)
    // 切割数量11
    Q_PROPERTY(QString CutCount_11_ListProcess READ CutCount_11_ListProcess WRITE setCutCount_11_ListProcess NOTIFY CutCount_11_ListProcessChanged FINAL)
    // 切割数量12
    Q_PROPERTY(QString CutCount_12_ListProcess READ CutCount_12_ListProcess WRITE setCutCount_12_ListProcess NOTIFY CutCount_12_ListProcessChanged FINAL)
    // 切割数量13
    Q_PROPERTY(QString CutCount_13_ListProcess READ CutCount_13_ListProcess WRITE setCutCount_13_ListProcess NOTIFY CutCount_13_ListProcessChanged FINAL)
    // 切割数量14
    Q_PROPERTY(QString CutCount_14_ListProcess READ CutCount_14_ListProcess WRITE setCutCount_14_ListProcess NOTIFY CutCount_14_ListProcessChanged FINAL)
    // 切割数量15
    Q_PROPERTY(QString CutCount_15_ListProcess READ CutCount_15_ListProcess WRITE setCutCount_15_ListProcess NOTIFY CutCount_15_ListProcessChanged FINAL)
    // 切割数量16
    Q_PROPERTY(QString CutCount_16_ListProcess READ CutCount_16_ListProcess WRITE setCutCount_16_ListProcess NOTIFY CutCount_16_ListProcessChanged FINAL)
    // 切割数量17
    Q_PROPERTY(QString CutCount_17_ListProcess READ CutCount_17_ListProcess WRITE setCutCount_17_ListProcess NOTIFY CutCount_17_ListProcessChanged FINAL)
    // 切割数量18
    Q_PROPERTY(QString CutCount_18_ListProcess READ CutCount_18_ListProcess WRITE setCutCount_18_ListProcess NOTIFY CutCount_18_ListProcessChanged FINAL)
    // 切割数量19
    Q_PROPERTY(QString CutCount_19_ListProcess READ CutCount_19_ListProcess WRITE setCutCount_19_ListProcess NOTIFY CutCount_19_ListProcessChanged FINAL)
    // 切割数量20
    Q_PROPERTY(QString CutCount_20_ListProcess READ CutCount_20_ListProcess WRITE setCutCount_20_ListProcess NOTIFY CutCount_20_ListProcessChanged FINAL)
    // 已加工数量01
    Q_PROPERTY(QString WorkedCount_01_ListProcess READ WorkedCount_01_ListProcess WRITE setWorkedCount_01_ListProcess NOTIFY WorkedCount_01_ListProcessChanged FINAL)
    // 已加工数量02
    Q_PROPERTY(QString WorkedCount_02_ListProcess READ WorkedCount_02_ListProcess WRITE setWorkedCount_02_ListProcess NOTIFY WorkedCount_02_ListProcessChanged FINAL)
    // 已加工数量03
    Q_PROPERTY(QString WorkedCount_03_ListProcess READ WorkedCount_03_ListProcess WRITE setWorkedCount_03_ListProcess NOTIFY WorkedCount_03_ListProcessChanged FINAL)
    // 已加工数量04
    Q_PROPERTY(QString WorkedCount_04_ListProcess READ WorkedCount_04_ListProcess WRITE setWorkedCount_04_ListProcess NOTIFY WorkedCount_04_ListProcessChanged FINAL)
    // 已加工数量05
    Q_PROPERTY(QString WorkedCount_05_ListProcess READ WorkedCount_05_ListProcess WRITE setWorkedCount_05_ListProcess NOTIFY WorkedCount_05_ListProcessChanged FINAL)
    // 已加工数量06
    Q_PROPERTY(QString WorkedCount_06_ListProcess READ WorkedCount_06_ListProcess WRITE setWorkedCount_06_ListProcess NOTIFY WorkedCount_06_ListProcessChanged FINAL)
    // 已加工数量07
    Q_PROPERTY(QString WorkedCount_07_ListProcess READ WorkedCount_07_ListProcess WRITE setWorkedCount_07_ListProcess NOTIFY WorkedCount_07_ListProcessChanged FINAL)
    // 已加工数量08
    Q_PROPERTY(QString WorkedCount_08_ListProcess READ WorkedCount_08_ListProcess WRITE setWorkedCount_08_ListProcess NOTIFY WorkedCount_08_ListProcessChanged FINAL)
    // 已加工数量09
    Q_PROPERTY(QString WorkedCount_09_ListProcess READ WorkedCount_09_ListProcess WRITE setWorkedCount_09_ListProcess NOTIFY WorkedCount_09_ListProcessChanged FINAL)
    // 已加工数量10
    Q_PROPERTY(QString WorkedCount_10_ListProcess READ WorkedCount_10_ListProcess WRITE setWorkedCount_10_ListProcess NOTIFY WorkedCount_10_ListProcessChanged FINAL)
    // 已加工数量11
    Q_PROPERTY(QString WorkedCount_11_ListProcess READ WorkedCount_11_ListProcess WRITE setWorkedCount_11_ListProcess NOTIFY WorkedCount_11_ListProcessChanged FINAL)
    // 已加工数量12
    Q_PROPERTY(QString WorkedCount_12_ListProcess READ WorkedCount_12_ListProcess WRITE setWorkedCount_12_ListProcess NOTIFY WorkedCount_12_ListProcessChanged FINAL)
    // 已加工数量13
    Q_PROPERTY(QString WorkedCount_13_ListProcess READ WorkedCount_13_ListProcess WRITE setWorkedCount_13_ListProcess NOTIFY WorkedCount_13_ListProcessChanged FINAL)
    // 已加工数量14
    Q_PROPERTY(QString WorkedCount_14_ListProcess READ WorkedCount_14_ListProcess WRITE setWorkedCount_14_ListProcess NOTIFY WorkedCount_14_ListProcessChanged FINAL)
    // 已加工数量15
    Q_PROPERTY(QString WorkedCount_15_ListProcess READ WorkedCount_15_ListProcess WRITE setWorkedCount_15_ListProcess NOTIFY WorkedCount_15_ListProcessChanged FINAL)
    // 已加工数量16
    Q_PROPERTY(QString WorkedCount_16_ListProcess READ WorkedCount_16_ListProcess WRITE setWorkedCount_16_ListProcess NOTIFY WorkedCount_16_ListProcessChanged FINAL)
    // 已加工数量17
    Q_PROPERTY(QString WorkedCount_17_ListProcess READ WorkedCount_17_ListProcess WRITE setWorkedCount_17_ListProcess NOTIFY WorkedCount_17_ListProcessChanged FINAL)
    // 已加工数量18
    Q_PROPERTY(QString WorkedCount_18_ListProcess READ WorkedCount_18_ListProcess WRITE setWorkedCount_18_ListProcess NOTIFY WorkedCount_18_ListProcessChanged FINAL)
    // 已加工数量19
    Q_PROPERTY(QString WorkedCount_19_ListProcess READ WorkedCount_19_ListProcess WRITE setWorkedCount_19_ListProcess NOTIFY WorkedCount_19_ListProcessChanged FINAL)
    // 已加工数量20
    Q_PROPERTY(QString WorkedCount_20_ListProcess READ WorkedCount_20_ListProcess WRITE setWorkedCount_20_ListProcess NOTIFY WorkedCount_20_ListProcessChanged FINAL)


    // 网络料单界面
    // 当前料单页数
    Q_PROPERTY(QString NetWork_CurrentPages READ NetWork_CurrentPages WRITE setNetWork_CurrentPages NOTIFY NetWork_CurrentPagesChanged FINAL)
    // 总页数
    Q_PROPERTY(QString NetWork_CountPage READ NetWork_CountPage WRITE setNetWork_CountPage NOTIFY NetWork_CountPageChanged FINAL)
    // M61  锯片工进中
    Q_PROPERTY(bool NetWork_M61 READ NetWork_M61 WRITE setNetWork_M61 NOTIFY NetWork_M61Changed FINAL)
    // M96  超长切割中
    Q_PROPERTY(bool NetWork_M96 READ NetWork_M96 WRITE setNetWork_M96 NOTIFY NetWork_M96Changed FINAL)
    // M97  超短切割中
    Q_PROPERTY(bool NetWork_M97 READ NetWork_M97 WRITE setNetWork_M97 NOTIFY NetWork_M97Changed FINAL)
    // IO_X13


    //
    // IO监控界面
    //
    // 磁尺A相 IO_X00
    Q_PROPERTY(bool IO_X0 READ IO_X0 WRITE setIO_X0 NOTIFY IO_X0Changed FINAL)
    // 磁尺B相 IO_X01
    Q_PROPERTY(bool IO_X1 READ IO_X1 WRITE setIO_X1 NOTIFY IO_X1Changed FINAL)
    // 左机头旋钮 IO_X02
    Q_PROPERTY(bool IO_X2 READ IO_X2 WRITE setIO_X2 NOTIFY IO_X2Changed FINAL)
    // 右机头旋钮 IO_X03
    Q_PROPERTY(bool IO_X3 READ IO_X3 WRITE setIO_X3 NOTIFY IO_X3Changed FINAL)
    // 急停按钮 IO_X05
    Q_PROPERTY(bool IO_X5 READ IO_X5 WRITE setIO_X5 NOTIFY IO_X5Changed FINAL)
    // 压紧按钮 IO_X06
    Q_PROPERTY(bool IO_X6 READ IO_X6 WRITE setIO_X6 NOTIFY IO_X6Changed FINAL)
    // 工进按钮 IO_X07
    Q_PROPERTY(bool IO_X7 READ IO_X7 WRITE setIO_X7 NOTIFY IO_X7Changed FINAL)
    // 锯片启停 IO_X10
    Q_PROPERTY(bool IO_X10 READ IO_X10 WRITE setIO_X10 NOTIFY IO_X10Changed FINAL)
    // 原点复位 IO_X11
    Q_PROPERTY(bool IO_X11 READ IO_X11 WRITE setIO_X11 NOTIFY IO_X11Changed FINAL)
    // 左机头后位 X12 IO_X12
    // 右机头后位 X13 IO_X13
    // 左机头前位 X14 IO_X14
    // 右机头前位 X15 IO_X15
    // 伺服报警 IO_X16
    Q_PROPERTY(bool IO_X16 READ IO_X16 WRITE setIO_X16 NOTIFY IO_X16Changed FINAL)
    // 伺服准备好 IO_X17
    Q_PROPERTY(bool IO_X17 READ IO_X17 WRITE setIO_X17 NOTIFY IO_X17Changed FINAL)
    // X轴原点 IO_X20
    Q_PROPERTY(bool IO_X20 READ IO_X20 WRITE setIO_X20 NOTIFY IO_X20Changed FINAL)
    // X轴正限位 IO_X21
    Q_PROPERTY(bool IO_X21 READ IO_X21 WRITE setIO_X21 NOTIFY IO_X21Changed FINAL)
    // X轴负限位 IO_X22
    Q_PROPERTY(bool IO_X22 READ IO_X22 WRITE setIO_X22 NOTIFY IO_X22Changed FINAL)
    // 前托退到位 IO_X23
    Q_PROPERTY(bool IO_X23 READ IO_X23 WRITE setIO_X23 NOTIFY IO_X23Changed FINAL)
    // 中托退到位 IO_X24
    Q_PROPERTY(bool IO_X24 READ IO_X24 WRITE setIO_X24 NOTIFY IO_X24Changed FINAL)
    // 后托退到位 IO_X25
    Q_PROPERTY(bool IO_X25 READ IO_X25 WRITE setIO_X25 NOTIFY IO_X25Changed FINAL)

    // 脉冲 IO_Y0
    Q_PROPERTY(bool IO_Y0 READ IO_Y0 WRITE setIO_Y0 NOTIFY IO_Y0Changed FINAL)
    // 方向 IO_Y1
    Q_PROPERTY(bool IO_Y1 READ IO_Y1 WRITE setIO_Y1 NOTIFY IO_Y1Changed FINAL)
    // 左电机 IO_Y2
    Q_PROPERTY(bool IO_Y2 READ IO_Y2 WRITE setIO_Y2 NOTIFY IO_Y2Changed FINAL)
    // 右电机 IO_Y3
    Q_PROPERTY(bool IO_Y3 READ IO_Y3 WRITE setIO_Y3 NOTIFY IO_Y3Changed FINAL)
    // 左45度阀 IO_Y4
    Q_PROPERTY(bool IO_Y4 READ IO_Y4 WRITE setIO_Y4 NOTIFY IO_Y4Changed FINAL)
    // 左90度阀 IO_Y5
    Q_PROPERTY(bool IO_Y5 READ IO_Y5 WRITE setIO_Y5 NOTIFY IO_Y5Changed FINAL)
    // 右45度阀 IO_Y6
    Q_PROPERTY(bool IO_Y6 READ IO_Y6 WRITE setIO_Y6 NOTIFY IO_Y6Changed FINAL)
    // 右90度阀 IO_Y7
    Q_PROPERTY(bool IO_Y7 READ IO_Y7 WRITE setIO_Y7 NOTIFY IO_Y7Changed FINAL)

    // 左工进 IO_Y10
    Q_PROPERTY(bool IO_Y10 READ IO_Y10 WRITE setIO_Y10 NOTIFY IO_Y10Changed FINAL)
    // 右工进 IO_Y11
    Q_PROPERTY(bool IO_Y11 READ IO_Y11 WRITE setIO_Y11 NOTIFY IO_Y11Changed FINAL)
    // 左压紧 IO_Y12
    Q_PROPERTY(bool IO_Y12 READ IO_Y12 WRITE setIO_Y12 NOTIFY IO_Y12Changed FINAL)
    // 右压紧 IO_Y13
    Q_PROPERTY(bool IO_Y13 READ IO_Y13 WRITE setIO_Y13 NOTIFY IO_Y13Changed FINAL)
    // 料高气缸 IO_Y14
    Q_PROPERTY(bool IO_Y14 READ IO_Y14 WRITE setIO_Y14 NOTIFY IO_Y14Changed FINAL)
    // 前托料开关 IO_Y15
    // 中托料开关 IO_Y16
    // 后托料开关 IO_Y17
    // 刹车气缸 IO_Y20
    Q_PROPERTY(bool IO_Y20 READ IO_Y20 WRITE setIO_Y20 NOTIFY IO_Y20Changed FINAL)
    // 拽料气缸 IO_Y21
    Q_PROPERTY(bool IO_Y21 READ IO_Y21 WRITE setIO_Y21 NOTIFY IO_Y21Changed FINAL)
    // 左拉料压紧 IO_Y22
    Q_PROPERTY(bool IO_Y22 READ IO_Y22 WRITE setIO_Y22 NOTIFY IO_Y22Changed FINAL)
    // 左侧拉料 IO_Y23
    Q_PROPERTY(bool IO_Y23 READ IO_Y23 WRITE setIO_Y23 NOTIFY IO_Y23Changed FINAL)
    // 吹气阀 IO_Y24
    Q_PROPERTY(bool IO_Y24 READ IO_Y24 WRITE setIO_Y24 NOTIFY IO_Y24Changed FINAL)
    // 左右吹气阀 IO_Y25
    Q_PROPERTY(bool IO_Y25 READ IO_Y25 WRITE setIO_Y25 NOTIFY IO_Y25Changed FINAL)


    //
    // 设备参数界面
    //
    // 原点值 D210 OriginValue
    // 定位速度 D206
    Q_PROPERTY(QString Location_Speed READ Location_Speed WRITE setLocation_Speed NOTIFY Location_SpeedChanged FINAL)
    // 手动速度 D1392
    Q_PROPERTY(QString Manual_Speed READ Manual_Speed WRITE setManual_Speed NOTIFY Manual_SpeedChanged FINAL)
    // 压紧动作时间 D1280
    Q_PROPERTY(QString Impact_Active_Time READ Impact_Active_Time WRITE setImpact_Active_Time NOTIFY Impact_Active_TimeChanged FINAL)
    // 料高测量时间 D1288
    Q_PROPERTY(QString MaterialHeight_ObserveTime READ MaterialHeight_ObserveTime WRITE setMaterialHeight_ObserveTime NOTIFY MaterialHeight_ObserveTimeChanged FINAL)
    // 料高磁尺当量 D1290
    Q_PROPERTY(QString MaterialHeight_DisplaceMent READ MaterialHeight_DisplaceMent WRITE setMaterialHeight_DisplaceMent NOTIFY MaterialHeight_DisplaceMentChanged FINAL)
    // 内摆安全位置 D1394  Angle45SafeDistance
    // 左锯工进时间 D232
    Q_PROPERTY(QString LeftSaw_Out_Time READ LeftSaw_Out_Time WRITE setLeftSaw_Out_Time NOTIFY LeftSaw_Out_TimeChanged FINAL)
    // 右锯工进时间 D234
    Q_PROPERTY(QString RightSaw_Out_Time READ RightSaw_Out_Time WRITE setRightSaw_Out_Time NOTIFY RightSaw_Out_TimeChanged FINAL)
    // 双锯45度补偿 D1384
    Q_PROPERTY(QString DoubleSaws_45_Compensate READ DoubleSaws_45_Compensate WRITE setDoubleSaws_45_Compensate NOTIFY DoubleSaws_45_CompensateChanged FINAL)
    // 单锯45度补偿 D396
    Q_PROPERTY(QString SingleSaw_45_Compensate READ SingleSaw_45_Compensate WRITE setSingleSaw_45_Compensate NOTIFY SingleSaw_45_CompensateChanged FINAL)
    // 左右吹气时间 D374 「16」
    Q_PROPERTY(QString Blow_Time READ Blow_Time WRITE setBlow_Time NOTIFY Blow_TimeChanged FINAL)
    // 电磁阀断电延时 D238
    Q_PROPERTY(QString PowerOff_Delay_Time READ PowerOff_Delay_Time WRITE setPowerOff_Delay_Time NOTIFY PowerOff_Delay_TimeChanged FINAL)
    // 机器摆动角度方式 (内摆 外摆)  M394  MechineChangeAngleMode
    // 自动测料高功能 M396  AutoObserveState
    // 电磁阀断电模式 (True  断电 False 不断电)  M509
    Q_PROPERTY(bool PowerOffMode READ PowerOffMode WRITE setPowerOffMode NOTIFY PowerOffModeChanged FINAL)
    // 微动距离 D660
    Q_PROPERTY(QString Tiny_Move_Distance READ Tiny_Move_Distance WRITE setTiny_Move_Distance NOTIFY Tiny_Move_DistanceChanged FINAL)
    // 左拉料延时 D670
    Q_PROPERTY(QString Left_Pull_Delay READ Left_Pull_Delay WRITE setLeft_Pull_Delay NOTIFY Left_Pull_DelayChanged FINAL)


    //
    // 伺服参数设置界面
    //
    // 编码器数据  D2
    Q_PROPERTY(QString Encoder_Value READ Encoder_Value WRITE setEncoder_Value NOTIFY Encoder_ValueChanged FINAL)
    // 每圈脉冲数  D200
    Q_PROPERTY(QString PulseNumber_PerRound READ PulseNumber_PerRound WRITE setPulseNumber_PerRound NOTIFY PulseNumber_PerRoundChanged FINAL)
    // 每圈位移量  D202
    Q_PROPERTY(QString DistanceNumber_PerRound READ DistanceNumber_PerRound WRITE setDistanceNumber_PerRound NOTIFY DistanceNumber_PerRoundChanged FINAL)
    // 加减速时间  D208  「16」
    Q_PROPERTY(QString TimeOf_ACC_DEC READ TimeOf_ACC_DEC WRITE setTimeOf_ACC_DEC NOTIFY TimeOf_ACC_DECChanged FINAL)
    // 最大切割长度  D216  MaxCutLength
    // 反向软限位  D218
    Q_PROPERTY(QString Reverse_Soft_Limit READ Reverse_Soft_Limit WRITE setReverse_Soft_Limit NOTIFY Reverse_Soft_LimitChanged FINAL)
    // 找零点高速  D220
    Q_PROPERTY(QString FindZero_HighSpeed READ FindZero_HighSpeed WRITE setFindZero_HighSpeed NOTIFY FindZero_HighSpeedChanged FINAL)
    // 找零点低速  D222
    Q_PROPERTY(QString FindZero_LowSpeed READ FindZero_LowSpeed WRITE setFindZero_LowSpeed NOTIFY FindZero_LowSpeedChanged FINAL)
    // 刹车关闭时间  D602 「16」
    Q_PROPERTY(QString Brake_OpenTime READ Brake_OpenTime WRITE setBrake_OpenTime NOTIFY Brake_OpenTimeChanged FINAL)
    // 刹车打开时间  D1278
    Q_PROPERTY(QString Brake_CloseTime READ Brake_CloseTime WRITE setBrake_CloseTime NOTIFY Brake_CloseTimeChanged FINAL)
    // 伺服类型(增量式 0 绝对值 1)  M392
    Q_PROPERTY(bool ServoType READ ServoType WRITE setServoType NOTIFY ServoTypeChanged FINAL)


    //
    // 托料架设置界面
    //
    // 托料架安全位置  D612
    Q_PROPERTY(QString Hold_Safe_Distance READ Hold_Safe_Distance WRITE setHold_Safe_Distance NOTIFY Hold_Safe_DistanceChanged FINAL)
    // 前托位置  D1294
    Q_PROPERTY(QString Front_Hold_Location READ Front_Hold_Location WRITE setFront_Hold_Location NOTIFY Front_Hold_LocationChanged FINAL)
    // 中托位置下限  D296
    Q_PROPERTY(QString Mid_Hold_Location_Down_Limit READ Mid_Hold_Location_Down_Limit WRITE setMid_Hold_Location_Down_Limit NOTIFY Mid_Hold_Location_Down_LimitChanged FINAL)
    // 中托位置上限  D1296
    Q_PROPERTY(QString Mid_Hold_Location_Up_Limit READ Mid_Hold_Location_Up_Limit WRITE setMid_Hold_Location_Up_Limit NOTIFY Mid_Hold_Location_Up_LimitChanged FINAL)
    // 后托位置     D1298
    Q_PROPERTY(QString Back_Hold_Location READ Back_Hold_Location WRITE setBack_Hold_Location NOTIFY Back_Hold_LocationChanged FINAL)
    // IO_Y15   前托料开关
    Q_PROPERTY(bool IO_Y15 READ IO_Y15 WRITE setIO_Y15 NOTIFY IO_Y15Changed FINAL)
    // IO_Y16   中托料开关
    Q_PROPERTY(bool IO_Y16 READ IO_Y16 WRITE setIO_Y16 NOTIFY IO_Y16Changed FINAL)
    // IO_Y17   后托料开关
    Q_PROPERTY(bool IO_Y17 READ IO_Y17 WRITE setIO_Y17 NOTIFY IO_Y17Changed FINAL)
    // 前托料架退到位  M243
    Q_PROPERTY(bool Front_Hold_BackOver READ Front_Hold_BackOver WRITE setFront_Hold_BackOver NOTIFY Front_Hold_BackOverChanged FINAL)
    // 中托料架退到位  M244
    Q_PROPERTY(bool Mid_Hold_BackOver READ Mid_Hold_BackOver WRITE setMid_Hold_BackOver NOTIFY Mid_Hold_BackOverChanged FINAL)
    // 后托料架退到位  M245
    Q_PROPERTY(bool Back_Hold_BackOver READ Back_Hold_BackOver WRITE setBack_Hold_BackOver NOTIFY Back_Hold_BackOverChanged FINAL)
    // 前托料架使能  M387
    Q_PROPERTY(bool Front_Hold_Enable READ Front_Hold_Enable WRITE setFront_Hold_Enable NOTIFY Front_Hold_EnableChanged FINAL)
    // 中托料架使能  M388
    Q_PROPERTY(bool Mid_Hold_Enable READ Mid_Hold_Enable WRITE setMid_Hold_Enable NOTIFY Mid_Hold_EnableChanged FINAL)
    // 后托料架使能  M389
    Q_PROPERTY(bool Back_Hold_Enable READ Back_Hold_Enable WRITE setBack_Hold_Enable NOTIFY Back_Hold_EnableChanged FINAL)
    // 前托料架大于小于  M384
    Q_PROPERTY(bool Front_Hold_Mode READ Front_Hold_Mode WRITE setFront_Hold_Mode NOTIFY Front_Hold_ModeChanged FINAL)
    // 后托料架大于小于  M386
    Q_PROPERTY(bool Back_Hold_Mode READ Back_Hold_Mode WRITE setBack_Hold_Mode NOTIFY Back_Hold_ModeChanged FINAL)
    // 托料架检测   M499
    Q_PROPERTY(bool Hold_Exist READ Hold_Exist WRITE setHold_Exist NOTIFY Hold_ExistChanged FINAL)



    //
    // 位置补偿界面
    //
    // 原点值 D210  OriginValue
    // 手动料长 D212  MaterialLengthValue
    // 手动料高 D214  MaterialHeightValue
    // 最大切割长度 D216  MaxCutLength
    // 补偿值1 D1302
    Q_PROPERTY(QString Location_Compensate_01 READ Location_Compensate_01 WRITE setLocation_Compensate_01 NOTIFY Location_Compensate_01Changed FINAL)
    // 补偿值2 D1304
    Q_PROPERTY(QString Location_Compensate_02 READ Location_Compensate_02 WRITE setLocation_Compensate_02 NOTIFY Location_Compensate_02Changed FINAL)
    // 补偿值3 D1306
    Q_PROPERTY(QString Location_Compensate_03 READ Location_Compensate_03 WRITE setLocation_Compensate_03 NOTIFY Location_Compensate_03Changed FINAL)
    // 补偿值4 D1308
    Q_PROPERTY(QString Location_Compensate_04 READ Location_Compensate_04 WRITE setLocation_Compensate_04 NOTIFY Location_Compensate_04Changed FINAL)
    // 补偿值5 D1310
    Q_PROPERTY(QString Location_Compensate_05 READ Location_Compensate_05 WRITE setLocation_Compensate_05 NOTIFY Location_Compensate_05Changed FINAL)
    // 补偿值6 D1312
    Q_PROPERTY(QString Location_Compensate_06 READ Location_Compensate_06 WRITE setLocation_Compensate_06 NOTIFY Location_Compensate_06Changed FINAL)
    // 补偿值7 D1314
    Q_PROPERTY(QString Location_Compensate_07 READ Location_Compensate_07 WRITE setLocation_Compensate_07 NOTIFY Location_Compensate_07Changed FINAL)
    // 补偿值8 D1316
    Q_PROPERTY(QString Location_Compensate_08 READ Location_Compensate_08 WRITE setLocation_Compensate_08 NOTIFY Location_Compensate_08Changed FINAL)
    // 补偿值9 D1318
    Q_PROPERTY(QString Location_Compensate_09 READ Location_Compensate_09 WRITE setLocation_Compensate_09 NOTIFY Location_Compensate_09Changed FINAL)
    // 补偿值10 D1320
    Q_PROPERTY(QString Location_Compensate_10 READ Location_Compensate_10 WRITE setLocation_Compensate_10 NOTIFY Location_Compensate_10Changed FINAL)
    // 补偿值11 D1322
    Q_PROPERTY(QString Location_Compensate_11 READ Location_Compensate_11 WRITE setLocation_Compensate_11 NOTIFY Location_Compensate_11Changed FINAL)
    // 补偿值12 D1324
    Q_PROPERTY(QString Location_Compensate_12 READ Location_Compensate_12 WRITE setLocation_Compensate_12 NOTIFY Location_Compensate_12Changed FINAL)
    // 补偿值13 D1326
    Q_PROPERTY(QString Location_Compensate_13 READ Location_Compensate_13 WRITE setLocation_Compensate_13 NOTIFY Location_Compensate_13Changed FINAL)
    // 补偿值14 D1328
    Q_PROPERTY(QString Location_Compensate_14 READ Location_Compensate_14 WRITE setLocation_Compensate_14 NOTIFY Location_Compensate_14Changed FINAL)
    // 补偿值15 D1330
    Q_PROPERTY(QString Location_Compensate_15 READ Location_Compensate_15 WRITE setLocation_Compensate_15 NOTIFY Location_Compensate_15Changed FINAL)
    // 补偿值16 D1332
    Q_PROPERTY(QString Location_Compensate_16 READ Location_Compensate_16 WRITE setLocation_Compensate_16 NOTIFY Location_Compensate_16Changed FINAL)
    // 补偿值17 D1334
    Q_PROPERTY(QString Location_Compensate_17 READ Location_Compensate_17 WRITE setLocation_Compensate_17 NOTIFY Location_Compensate_17Changed FINAL)
    // 补偿值18 D1336
    Q_PROPERTY(QString Location_Compensate_18 READ Location_Compensate_18 WRITE setLocation_Compensate_18 NOTIFY Location_Compensate_18Changed FINAL)
    // 补偿值19 D1338
    Q_PROPERTY(QString Location_Compensate_19 READ Location_Compensate_19 WRITE setLocation_Compensate_19 NOTIFY Location_Compensate_19Changed FINAL)
    // 补偿值20 D1340
    Q_PROPERTY(QString Location_Compensate_20 READ Location_Compensate_20 WRITE setLocation_Compensate_20 NOTIFY Location_Compensate_20Changed FINAL)
    // 摆角专补下限  D1374
    Q_PROPERTY(QString SpecialCompensate_DownLimit READ SpecialCompensate_DownLimit WRITE setSpecialCompensate_DownLimit NOTIFY SpecialCompensate_DownLimitChanged FINAL)
    // 摆角专补上限  D1376
    Q_PROPERTY(QString SpecialCompensate_UpLimit READ SpecialCompensate_UpLimit WRITE setSpecialCompensate_UpLimit NOTIFY SpecialCompensate_UpLimitChanged FINAL)
    // 摆角补偿值  D1378
    Q_PROPERTY(QString SpecialCompensateValue READ SpecialCompensateValue WRITE setSpecialCompensateValue NOTIFY SpecialCompensateValueChanged FINAL)
    // 内摆安全位置 D1394  Angle45SafeDistance
    // 左机头角度反馈 M390 LeftAngleFeedBack
    // 右机头角度反馈 M391 RightAngleFeedBack
    // 摆角专补启用  M421
    Q_PROPERTY(bool SpecialCompensate_State READ SpecialCompensate_State WRITE setSpecialCompensate_State NOTIFY SpecialCompensate_StateChanged FINAL)


    //
    // 任意位置补偿界面
    //
    // 任意位置补偿下限1  D1750
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_01 READ AnyLocation_Compensate_DownLimit_01 WRITE setAnyLocation_Compensate_DownLimit_01 NOTIFY AnyLocation_Compensate_DownLimit_01Changed FINAL)
    // 任意位置补偿上限1  D1752
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_01 READ AnyLocation_Compensate_UpLimit_01 WRITE setAnyLocation_Compensate_UpLimit_01 NOTIFY AnyLocation_Compensate_UpLimit_01Changed FINAL)
    // 任意位置补偿值1  D1754
    Q_PROPERTY(QString AnyLocation_Compensate_01 READ AnyLocation_Compensate_01 WRITE setAnyLocation_Compensate_01 NOTIFY AnyLocation_Compensate_01Changed FINAL)
    // 任意位置补偿下限2  D1756
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_02 READ AnyLocation_Compensate_DownLimit_02 WRITE setAnyLocation_Compensate_DownLimit_02 NOTIFY AnyLocation_Compensate_DownLimit_02Changed FINAL)
    // 任意位置补偿上限2  D1758
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_02 READ AnyLocation_Compensate_UpLimit_02 WRITE setAnyLocation_Compensate_UpLimit_02 NOTIFY AnyLocation_Compensate_UpLimit_02Changed FINAL)
    // 任意位置补偿值2  D1760
    Q_PROPERTY(QString AnyLocation_Compensate_02 READ AnyLocation_Compensate_02 WRITE setAnyLocation_Compensate_02 NOTIFY AnyLocation_Compensate_02Changed FINAL)
    // 任意位置补偿下限3  D1762
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_03 READ AnyLocation_Compensate_DownLimit_03 WRITE setAnyLocation_Compensate_DownLimit_03 NOTIFY AnyLocation_Compensate_DownLimit_03Changed FINAL)
    // 任意位置补偿上限3  D1764
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_03 READ AnyLocation_Compensate_UpLimit_03 WRITE setAnyLocation_Compensate_UpLimit_03 NOTIFY AnyLocation_Compensate_UpLimit_03Changed FINAL)
    // 任意位置补偿值3  D1766
    Q_PROPERTY(QString AnyLocation_Compensate_03 READ AnyLocation_Compensate_03 WRITE setAnyLocation_Compensate_03 NOTIFY AnyLocation_Compensate_03Changed FINAL)
    // 任意位置补偿下限4  D1768
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_04 READ AnyLocation_Compensate_DownLimit_04 WRITE setAnyLocation_Compensate_DownLimit_04 NOTIFY AnyLocation_Compensate_DownLimit_04Changed FINAL)
    // 任意位置补偿上限4  D1770
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_04 READ AnyLocation_Compensate_UpLimit_04 WRITE setAnyLocation_Compensate_UpLimit_04 NOTIFY AnyLocation_Compensate_UpLimit_04Changed FINAL)
    // 任意位置补偿值4  D1772
    Q_PROPERTY(QString AnyLocation_Compensate_04 READ AnyLocation_Compensate_04 WRITE setAnyLocation_Compensate_04 NOTIFY AnyLocation_Compensate_04Changed FINAL)
    // 任意位置补偿下限5  D1774
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_05 READ AnyLocation_Compensate_DownLimit_05 WRITE setAnyLocation_Compensate_DownLimit_05 NOTIFY AnyLocation_Compensate_DownLimit_05Changed FINAL)
    // 任意位置补偿上限5  D1776
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_05 READ AnyLocation_Compensate_UpLimit_05 WRITE setAnyLocation_Compensate_UpLimit_05 NOTIFY AnyLocation_Compensate_UpLimit_05Changed FINAL)
    // 任意位置补偿值5  D1778
    Q_PROPERTY(QString AnyLocation_Compensate_05 READ AnyLocation_Compensate_05 WRITE setAnyLocation_Compensate_05 NOTIFY AnyLocation_Compensate_05Changed FINAL)
    // 任意位置补偿下限6  D1780
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_06 READ AnyLocation_Compensate_DownLimit_06 WRITE setAnyLocation_Compensate_DownLimit_06 NOTIFY AnyLocation_Compensate_DownLimit_06Changed FINAL)
    // 任意位置补偿上限6  D1782
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_06 READ AnyLocation_Compensate_UpLimit_06 WRITE setAnyLocation_Compensate_UpLimit_06 NOTIFY AnyLocation_Compensate_UpLimit_06Changed FINAL)
    // 任意位置补偿值6  D1784
    Q_PROPERTY(QString AnyLocation_Compensate_06 READ AnyLocation_Compensate_06 WRITE setAnyLocation_Compensate_06 NOTIFY AnyLocation_Compensate_06Changed FINAL)
    // 任意位置补偿下限7  D1786
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_07 READ AnyLocation_Compensate_DownLimit_07 WRITE setAnyLocation_Compensate_DownLimit_07 NOTIFY AnyLocation_Compensate_DownLimit_07Changed FINAL)
    // 任意位置补偿上限7  D1788
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_07 READ AnyLocation_Compensate_UpLimit_07 WRITE setAnyLocation_Compensate_UpLimit_07 NOTIFY AnyLocation_Compensate_UpLimit_07Changed FINAL)
    // 任意位置补偿值7  D1790
    Q_PROPERTY(QString AnyLocation_Compensate_07 READ AnyLocation_Compensate_07 WRITE setAnyLocation_Compensate_07 NOTIFY AnyLocation_Compensate_07Changed FINAL)
    // 任意位置补偿下限8  D1792
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_08 READ AnyLocation_Compensate_DownLimit_08 WRITE setAnyLocation_Compensate_DownLimit_08 NOTIFY AnyLocation_Compensate_DownLimit_08Changed FINAL)
    // 任意位置补偿上限8  D1794
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_08 READ AnyLocation_Compensate_UpLimit_08 WRITE setAnyLocation_Compensate_UpLimit_08 NOTIFY AnyLocation_Compensate_UpLimit_08Changed FINAL)
    // 任意位置补偿值8  D1796
    Q_PROPERTY(QString AnyLocation_Compensate_08 READ AnyLocation_Compensate_08 WRITE setAnyLocation_Compensate_08 NOTIFY AnyLocation_Compensate_08Changed FINAL)
    // 任意位置补偿下限9  D1798
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_09 READ AnyLocation_Compensate_DownLimit_09 WRITE setAnyLocation_Compensate_DownLimit_09 NOTIFY AnyLocation_Compensate_DownLimit_09Changed FINAL)
    // 任意位置补偿上限9  D1800
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_09 READ AnyLocation_Compensate_UpLimit_09 WRITE setAnyLocation_Compensate_UpLimit_09 NOTIFY AnyLocation_Compensate_UpLimit_09Changed FINAL)
    // 任意位置补偿值9  D1802
    Q_PROPERTY(QString AnyLocation_Compensate_09 READ AnyLocation_Compensate_09 WRITE setAnyLocation_Compensate_09 NOTIFY AnyLocation_Compensate_09Changed FINAL)
    // 任意位置补偿下限10  D1804
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_10 READ AnyLocation_Compensate_DownLimit_10 WRITE setAnyLocation_Compensate_DownLimit_10 NOTIFY AnyLocation_Compensate_DownLimit_10Changed FINAL)
    // 任意位置补偿上限10  D1806
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_10 READ AnyLocation_Compensate_UpLimit_10 WRITE setAnyLocation_Compensate_UpLimit_10 NOTIFY AnyLocation_Compensate_UpLimit_10Changed FINAL)
    // 任意位置补偿值10  D1808
    Q_PROPERTY(QString AnyLocation_Compensate_10 READ AnyLocation_Compensate_10 WRITE setAnyLocation_Compensate_10 NOTIFY AnyLocation_Compensate_10Changed FINAL)
    // 任意位置补偿下限11  D1810
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_11 READ AnyLocation_Compensate_DownLimit_11 WRITE setAnyLocation_Compensate_DownLimit_11 NOTIFY AnyLocation_Compensate_DownLimit_11Changed FINAL)
    // 任意位置补偿上限11  D1812
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_11 READ AnyLocation_Compensate_UpLimit_11 WRITE setAnyLocation_Compensate_UpLimit_11 NOTIFY AnyLocation_Compensate_UpLimit_11Changed FINAL)
    // 任意位置补偿值11  D1814
    Q_PROPERTY(QString AnyLocation_Compensate_11 READ AnyLocation_Compensate_11 WRITE setAnyLocation_Compensate_11 NOTIFY AnyLocation_Compensate_11Changed FINAL)
    // 任意位置补偿下限12  D1816
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_12 READ AnyLocation_Compensate_DownLimit_12 WRITE setAnyLocation_Compensate_DownLimit_12 NOTIFY AnyLocation_Compensate_DownLimit_12Changed FINAL)
    // 任意位置补偿上限12  D1818
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_12 READ AnyLocation_Compensate_UpLimit_12 WRITE setAnyLocation_Compensate_UpLimit_12 NOTIFY AnyLocation_Compensate_UpLimit_12Changed FINAL)
    // 任意位置补偿值12  D1820
    Q_PROPERTY(QString AnyLocation_Compensate_12 READ AnyLocation_Compensate_12 WRITE setAnyLocation_Compensate_12 NOTIFY AnyLocation_Compensate_12Changed FINAL)
    // 任意位置补偿下限13  D1822
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_13 READ AnyLocation_Compensate_DownLimit_13 WRITE setAnyLocation_Compensate_DownLimit_13 NOTIFY AnyLocation_Compensate_DownLimit_13Changed FINAL)
    // 任意位置补偿上限13  D1824
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_13 READ AnyLocation_Compensate_UpLimit_13 WRITE setAnyLocation_Compensate_UpLimit_13 NOTIFY AnyLocation_Compensate_UpLimit_13Changed FINAL)
    // 任意位置补偿值13  D1826
    Q_PROPERTY(QString AnyLocation_Compensate_13 READ AnyLocation_Compensate_13 WRITE setAnyLocation_Compensate_13 NOTIFY AnyLocation_Compensate_13Changed FINAL)
    // 任意位置补偿下限14  D1828
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_14 READ AnyLocation_Compensate_DownLimit_14 WRITE setAnyLocation_Compensate_DownLimit_14 NOTIFY AnyLocation_Compensate_DownLimit_14Changed FINAL)
    // 任意位置补偿上限14  D1830
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_14 READ AnyLocation_Compensate_UpLimit_14 WRITE setAnyLocation_Compensate_UpLimit_14 NOTIFY AnyLocation_Compensate_UpLimit_14Changed FINAL)
    // 任意位置补偿值14  D1832
    Q_PROPERTY(QString AnyLocation_Compensate_14 READ AnyLocation_Compensate_14 WRITE setAnyLocation_Compensate_14 NOTIFY AnyLocation_Compensate_14Changed FINAL)
    // 任意位置补偿下限15  D1834
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_15 READ AnyLocation_Compensate_DownLimit_15 WRITE setAnyLocation_Compensate_DownLimit_15 NOTIFY AnyLocation_Compensate_DownLimit_15Changed FINAL)
    // 任意位置补偿上限15  D1836
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_15 READ AnyLocation_Compensate_UpLimit_15 WRITE setAnyLocation_Compensate_UpLimit_15 NOTIFY AnyLocation_Compensate_UpLimit_15Changed FINAL)
    // 任意位置补偿值15  D1838
    Q_PROPERTY(QString AnyLocation_Compensate_15 READ AnyLocation_Compensate_15 WRITE setAnyLocation_Compensate_15 NOTIFY AnyLocation_Compensate_15Changed FINAL)
    // 任意位置补偿下限16  D1840
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_16 READ AnyLocation_Compensate_DownLimit_16 WRITE setAnyLocation_Compensate_DownLimit_16 NOTIFY AnyLocation_Compensate_DownLimit_16Changed FINAL)
    // 任意位置补偿上限16  D1842
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_16 READ AnyLocation_Compensate_UpLimit_16 WRITE setAnyLocation_Compensate_UpLimit_16 NOTIFY AnyLocation_Compensate_UpLimit_16Changed FINAL)
    // 任意位置补偿值16  D1844
    Q_PROPERTY(QString AnyLocation_Compensate_16 READ AnyLocation_Compensate_16 WRITE setAnyLocation_Compensate_16 NOTIFY AnyLocation_Compensate_16Changed FINAL)
    // 任意位置补偿下限17  D1846
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_17 READ AnyLocation_Compensate_DownLimit_17 WRITE setAnyLocation_Compensate_DownLimit_17 NOTIFY AnyLocation_Compensate_DownLimit_17Changed FINAL)
    // 任意位置补偿上限17  D1848
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_17 READ AnyLocation_Compensate_UpLimit_17 WRITE setAnyLocation_Compensate_UpLimit_17 NOTIFY AnyLocation_Compensate_UpLimit_17Changed FINAL)
    // 任意位置补偿值17  D1850
    Q_PROPERTY(QString AnyLocation_Compensate_17 READ AnyLocation_Compensate_17 WRITE setAnyLocation_Compensate_17 NOTIFY AnyLocation_Compensate_17Changed FINAL)
    // 任意位置补偿下限18  D1852
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_18 READ AnyLocation_Compensate_DownLimit_18 WRITE setAnyLocation_Compensate_DownLimit_18 NOTIFY AnyLocation_Compensate_DownLimit_18Changed FINAL)
    // 任意位置补偿上限18  D1854
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_18 READ AnyLocation_Compensate_UpLimit_18 WRITE setAnyLocation_Compensate_UpLimit_18 NOTIFY AnyLocation_Compensate_UpLimit_18Changed FINAL)
    // 任意位置补偿值18  D1856
    Q_PROPERTY(QString AnyLocation_Compensate_18 READ AnyLocation_Compensate_18 WRITE setAnyLocation_Compensate_18 NOTIFY AnyLocation_Compensate_18Changed FINAL)
    // 任意位置补偿下限19  D1858
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_19 READ AnyLocation_Compensate_DownLimit_19 WRITE setAnyLocation_Compensate_DownLimit_19 NOTIFY AnyLocation_Compensate_DownLimit_19Changed FINAL)
    // 任意位置补偿上限19  D1860
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_19 READ AnyLocation_Compensate_UpLimit_19 WRITE setAnyLocation_Compensate_UpLimit_19 NOTIFY AnyLocation_Compensate_UpLimit_19Changed FINAL)
    // 任意位置补偿值19  D1862
    Q_PROPERTY(QString AnyLocation_Compensate_19 READ AnyLocation_Compensate_19 WRITE setAnyLocation_Compensate_19 NOTIFY AnyLocation_Compensate_19Changed FINAL)
    // 任意位置补偿下限20  D1864
    Q_PROPERTY(QString AnyLocation_Compensate_DownLimit_20 READ AnyLocation_Compensate_DownLimit_20 WRITE setAnyLocation_Compensate_DownLimit_20 NOTIFY AnyLocation_Compensate_DownLimit_20Changed FINAL)
    // 任意位置补偿上限20  D1866
    Q_PROPERTY(QString AnyLocation_Compensate_UpLimit_20 READ AnyLocation_Compensate_UpLimit_20 WRITE setAnyLocation_Compensate_UpLimit_20 NOTIFY AnyLocation_Compensate_UpLimit_20Changed FINAL)
    // 任意位置补偿值20  D1868
    Q_PROPERTY(QString AnyLocation_Compensate_20 READ AnyLocation_Compensate_20 WRITE setAnyLocation_Compensate_20 NOTIFY AnyLocation_Compensate_20Changed FINAL)
    // 任意位置补偿开关1  M401
    Q_PROPERTY(bool AnyLocation_State01 READ AnyLocation_State01 WRITE setAnyLocation_State01 NOTIFY AnyLocation_State01Changed FINAL)
    // 任意位置补偿开关2  M402
    Q_PROPERTY(bool AnyLocation_State02 READ AnyLocation_State02 WRITE setAnyLocation_State02 NOTIFY AnyLocation_State02Changed FINAL)
    // 任意位置补偿开关3  M403
    Q_PROPERTY(bool AnyLocation_State03 READ AnyLocation_State03 WRITE setAnyLocation_State03 NOTIFY AnyLocation_State03Changed FINAL)
    // 任意位置补偿开关4  M404
    Q_PROPERTY(bool AnyLocation_State04 READ AnyLocation_State04 WRITE setAnyLocation_State04 NOTIFY AnyLocation_State04Changed FINAL)
    // 任意位置补偿开关5  M405
    Q_PROPERTY(bool AnyLocation_State05 READ AnyLocation_State05 WRITE setAnyLocation_State05 NOTIFY AnyLocation_State05Changed FINAL)
    // 任意位置补偿开关6  M406
    Q_PROPERTY(bool AnyLocation_State06 READ AnyLocation_State06 WRITE setAnyLocation_State06 NOTIFY AnyLocation_State06Changed FINAL)
    // 任意位置补偿开关7  M407
    Q_PROPERTY(bool AnyLocation_State07 READ AnyLocation_State07 WRITE setAnyLocation_State07 NOTIFY AnyLocation_State07Changed FINAL)
    // 任意位置补偿开关8  M408
    Q_PROPERTY(bool AnyLocation_State08 READ AnyLocation_State08 WRITE setAnyLocation_State08 NOTIFY AnyLocation_State08Changed FINAL)
    // 任意位置补偿开关9  M409
    Q_PROPERTY(bool AnyLocation_State09 READ AnyLocation_State09 WRITE setAnyLocation_State09 NOTIFY AnyLocation_State09Changed FINAL)
    // 任意位置补偿开关10  M410
    Q_PROPERTY(bool AnyLocation_State10 READ AnyLocation_State10 WRITE setAnyLocation_State10 NOTIFY AnyLocation_State10Changed FINAL)
    // 任意位置补偿开关11  M411
    Q_PROPERTY(bool AnyLocation_State11 READ AnyLocation_State11 WRITE setAnyLocation_State11 NOTIFY AnyLocation_State11Changed FINAL)
    // 任意位置补偿开关12  M412
    Q_PROPERTY(bool AnyLocation_State12 READ AnyLocation_State12 WRITE setAnyLocation_State12 NOTIFY AnyLocation_State12Changed FINAL)
    // 任意位置补偿开关13  M413
    Q_PROPERTY(bool AnyLocation_State13 READ AnyLocation_State13 WRITE setAnyLocation_State13 NOTIFY AnyLocation_State13Changed FINAL)
    // 任意位置补偿开关14  M414
    Q_PROPERTY(bool AnyLocation_State14 READ AnyLocation_State14 WRITE setAnyLocation_State14 NOTIFY AnyLocation_State14Changed FINAL)
    // 任意位置补偿开关15  M415
    Q_PROPERTY(bool AnyLocation_State15 READ AnyLocation_State15 WRITE setAnyLocation_State15 NOTIFY AnyLocation_State15Changed FINAL)
    // 任意位置补偿开关16  M416
    Q_PROPERTY(bool AnyLocation_State16 READ AnyLocation_State16 WRITE setAnyLocation_State16 NOTIFY AnyLocation_State16Changed FINAL)
    // 任意位置补偿开关17  M417
    Q_PROPERTY(bool AnyLocation_State17 READ AnyLocation_State17 WRITE setAnyLocation_State17 NOTIFY AnyLocation_State17Changed FINAL)
    // 任意位置补偿开关18  M418
    Q_PROPERTY(bool AnyLocation_State18 READ AnyLocation_State18 WRITE setAnyLocation_State18 NOTIFY AnyLocation_State18Changed FINAL)
    // 任意位置补偿开关19  M419
    Q_PROPERTY(bool AnyLocation_State19 READ AnyLocation_State19 WRITE setAnyLocation_State19 NOTIFY AnyLocation_State19Changed FINAL)
    // 任意位置补偿开关20  M420
    Q_PROPERTY(bool AnyLocation_State20 READ AnyLocation_State20 WRITE setAnyLocation_State20 NOTIFY AnyLocation_State20Changed FINAL)



    //
    // 设备配置界面
    //
    // 工进时间分开  M528
    Q_PROPERTY(bool M_528 READ M_528 WRITE setM_528 NOTIFY M_528Changed FINAL)
    // 旋钮功能    M510
    Q_PROPERTY(bool M_510 READ M_510 WRITE setM_510 NOTIFY M_510Changed FINAL)
    // 电磁阀断电  M509  PowerOffMode
    // 编码器位数  M400
    Q_PROPERTY(bool M_400 READ M_400 WRITE setM_400 NOTIFY M_400Changed FINAL)
    // 打印机是否存在  M398
    Q_PROPERTY(bool M_398 READ M_398 WRITE setM_398 NOTIFY M_398Changed FINAL)
    // 托料架是否存在  M397
    Q_PROPERTY(bool M_397 READ M_397 WRITE setM_397 NOTIFY M_397Changed FINAL)
    // 自动测高是否存在  M396  AutoObserveState
    // 机器摆动角度方式 (内摆 外摆)   M394  MechineChangeAngleMode
    // 急停按钮常开  M500
    Q_PROPERTY(bool M_500 READ M_500 WRITE setM_500 NOTIFY M_500Changed FINAL)
    // 伺服报警常开  M501
    Q_PROPERTY(bool M_501 READ M_501 WRITE setM_501 NOTIFY M_501Changed FINAL)
    // 增量式伺服  M392 ServoType
    // 锯片选择模式  M393
    Q_PROPERTY(bool M_393 READ M_393 WRITE setM_393 NOTIFY M_393Changed FINAL)
    // 限位开关  M502
    Q_PROPERTY(bool M_502 READ M_502 WRITE setM_502 NOTIFY M_502Changed FINAL)
    // 机头旋钮  M503
    Q_PROPERTY(bool M_503 READ M_503 WRITE setM_503 NOTIFY M_503Changed FINAL)
    // 拉手功能  M529
    Q_PROPERTY(bool M_529 READ M_529 WRITE setM_529 NOTIFY M_529Changed FINAL)
    // 45度专切  M530
    Q_PROPERTY(bool M_530 READ M_530 WRITE setM_530 NOTIFY M_530Changed FINAL)
    // 自动打印功能启动  M511
    Q_PROPERTY(bool M_511 READ M_511 WRITE setM_511 NOTIFY M_511Changed FINAL)
    // 双锯延时  M399
    Q_PROPERTY(bool M_399 READ M_399 WRITE setM_399 NOTIFY M_399Changed FINAL)
    // 双锯启动延时时间  D1562  [16]
    Q_PROPERTY(QString DoubleSaws_StartDelay READ DoubleSaws_StartDelay WRITE setDoubleSaws_StartDelay NOTIFY DoubleSaws_StartDelayChanged FINAL)


    //
    // 报警信号
    //
    // 急停有效  M2
    Q_PROPERTY(bool Warning_Jerk READ Warning_Jerk WRITE setWarning_Jerk NOTIFY Warning_JerkChanged FINAL)
    // 伺服报警  M3
    Q_PROPERTY(bool Warning_Servo READ Warning_Servo WRITE setWarning_Servo NOTIFY Warning_ServoChanged FINAL)
    // 正向软限位超程  M31
    Q_PROPERTY(bool Warning_Front_Soft_Limit_Over READ Warning_Front_Soft_Limit_Over WRITE setWarning_Front_Soft_Limit_Over NOTIFY Warning_Front_Soft_Limit_OverChanged FINAL)
    // 反向软限位超程  M36
    Q_PROPERTY(bool Warning_Back_Soft_Limit_Over READ Warning_Back_Soft_Limit_Over WRITE setWarning_Back_Soft_Limit_Over NOTIFY Warning_Back_Soft_Limit_OverChanged FINAL)


    //
    // 提示消息
    //
    Q_PROPERTY(bool M_42 READ M_42 WRITE setM_42 NOTIFY M_42Changed FINAL)
    Q_PROPERTY(bool M_43 READ M_43 WRITE setM_43 NOTIFY M_43Changed FINAL)
    Q_PROPERTY(bool M_47 READ M_47 WRITE setM_47 NOTIFY M_47Changed FINAL)
    Q_PROPERTY(bool M_52 READ M_52 WRITE setM_52 NOTIFY M_52Changed FINAL)
    Q_PROPERTY(bool M_56 READ M_56 WRITE setM_56 NOTIFY M_56Changed FINAL)
    Q_PROPERTY(bool M_57 READ M_57 WRITE setM_57 NOTIFY M_57Changed FINAL)
    Q_PROPERTY(bool M_58 READ M_58 WRITE setM_58 NOTIFY M_58Changed FINAL)
    Q_PROPERTY(bool M_59 READ M_59 WRITE setM_59 NOTIFY M_59Changed FINAL)
    Q_PROPERTY(bool M_64 READ M_64 WRITE setM_64 NOTIFY M_64Changed FINAL)
    Q_PROPERTY(bool M_68 READ M_68 WRITE setM_68 NOTIFY M_68Changed FINAL)
    Q_PROPERTY(bool M_69 READ M_69 WRITE setM_69 NOTIFY M_69Changed FINAL)
    Q_PROPERTY(bool M_73 READ M_73 WRITE setM_73 NOTIFY M_73Changed FINAL)
    Q_PROPERTY(bool M_76 READ M_76 WRITE setM_76 NOTIFY M_76Changed FINAL)
    Q_PROPERTY(bool M_77 READ M_77 WRITE setM_77 NOTIFY M_77Changed FINAL)
    Q_PROPERTY(bool M_80 READ M_80 WRITE setM_80 NOTIFY M_80Changed FINAL)
    Q_PROPERTY(bool M_134 READ M_134 WRITE setM_134 NOTIFY M_134Changed FINAL)
    Q_PROPERTY(bool M_137 READ M_137 WRITE setM_137 NOTIFY M_137Changed FINAL)
    Q_PROPERTY(bool M_143 READ M_143 WRITE setM_143 NOTIFY M_143Changed FINAL)
    Q_PROPERTY(bool M_149 READ M_149 WRITE setM_149 NOTIFY M_149Changed FINAL)
    Q_PROPERTY(bool M_152 READ M_152 WRITE setM_152 NOTIFY M_152Changed FINAL)
    Q_PROPERTY(bool M_153 READ M_153 WRITE setM_153 NOTIFY M_153Changed FINAL)
    Q_PROPERTY(bool M_159 READ M_159 WRITE setM_159 NOTIFY M_159Changed FINAL)
    Q_PROPERTY(bool M_164 READ M_164 WRITE setM_164 NOTIFY M_164Changed FINAL)
    Q_PROPERTY(bool M_170 READ M_170 WRITE setM_170 NOTIFY M_170Changed FINAL)
    Q_PROPERTY(bool M_196 READ M_196 WRITE setM_196 NOTIFY M_196Changed FINAL)
    Q_PROPERTY(bool M_197 READ M_197 WRITE setM_197 NOTIFY M_197Changed FINAL)
    Q_PROPERTY(bool M_250 READ M_250 WRITE setM_250 NOTIFY M_250Changed FINAL)
    Q_PROPERTY(bool M_251 READ M_251 WRITE setM_251 NOTIFY M_251Changed FINAL)
    Q_PROPERTY(bool M_252 READ M_252 WRITE setM_252 NOTIFY M_252Changed FINAL)
    Q_PROPERTY(bool M_505 READ M_505 WRITE setM_505 NOTIFY M_505Changed FINAL)
    Q_PROPERTY(bool M_506 READ M_506 WRITE setM_506 NOTIFY M_506Changed FINAL)
    Q_PROPERTY(bool M_507 READ M_507 WRITE setM_507 NOTIFY M_507Changed FINAL)


    // 代加工料长 D64
    Q_PROPERTY(QString Wait_Worked_MaterialLength READ Wait_Worked_MaterialLength WRITE setWait_Worked_MaterialLength NOTIFY Wait_Worked_MaterialLengthChanged FINAL)

    // 厂家码  D360
    Q_PROPERTY(QString PLC_Customer_Number READ PLC_Customer_Number WRITE setPLC_Customer_Number NOTIFY PLC_Customer_NumberChanged FINAL)
    // 序列号  D370
    Q_PROPERTY(QString PLC_Order_Number READ PLC_Order_Number WRITE setPLC_Order_Number NOTIFY PLC_Order_NumberChanged FINAL)
    // 加密界面输入密码
    Q_PROPERTY(QString Input_Passwd READ Input_Passwd WRITE setInput_Passwd NOTIFY Input_PasswdChanged FINAL)

    // 二维码当前类型
    Q_PROPERTY(int QR_Code_CurrentType READ QR_Code_CurrentType WRITE setQR_Code_CurrentType NOTIFY QR_Code_CurrentTypeChanged FINAL)



public:
    ModbusControl(QObject *parent = nullptr);

    ModbusControl(const ModbusControl &) = delete;
    ModbusControl(ModbusControl &&) = delete;
    ModbusControl &operator=(const ModbusControl &) = delete;
    ModbusControl &operator=(ModbusControl &&) = delete;
    ~ModbusControl();

    static ModbusControl* getInstance(QObject *parent = nullptr);


    // 设置Modbus连接参数
    void setModbusConnectParameter(QString serialPort,
                                   QString baudRate,
                                   QString dataBit,
                                   QString parityBit,
                                   QString stopBit);

    // 轮询定时器
    QTimer* pollTimer;


    // 连接Modbus设备
   void connectToDevice();



    // 浮点数拆分  setValue 被拆分值  heightValue 拆分高位  lowValue 拆分低位      高位在前 低位在后
    void floatResolution(QString setValue,uint16_t* heightValue, uint16_t* lowValue);

    // 浮点数组合  将两个16位数据组合成一个32位浮点数        高位在前 低位在后
    float combinationToFloat(quint16 heightValue,quint16 lowValue);

    // 整数组合  将两个16位数据组合成一个32位整数       高位在前  低位在后
    int combinationToInt(quint16 heightValue,quint16 lowValue);

    // 写入线圈
    Q_INVOKABLE void write_Modbus_RTU_Coils(int address,QString newValue);
    // 写入保持寄存器 - 32位
    Q_INVOKABLE void write_Modbus_RTU_Hold_32(int address,QString newValue);
    // 写入保持寄存器 - 16位
    Q_INVOKABLE void write_Modbus_RTU_Hold_16(int address,QString newValue);

    // 读取PLC 时间
    void read_PLC_Time(QDateTime savedTime);
    // PLC 当前时间
    QDateTime currentDateTime_PLC;

    // 读取 报警信息
    void read_Warning_And_Hint_Data();
    // 初始化 报警信息
    void initWarningSignal();
    // 获取 报警信息
    void getWarningSingnal();
    // 保存 报警信息
    void saveWarningSignal();
    // 获取报警信息描述
    void getWarningDetailInfo(int index);
    // 发送报警信号
    void sendWarningSingalToQML();

    // 读取 当前位置
    void read_CuurentLocationValue();

    // 读取 手动加工页面 寄存器
    void read_ManualProcessWindow_Hold();
    // 读取 手动加工页面 线圈
    void read_ManualProcessWindow_Coils();
    // 读取 手动加工界面 离散输入
    void read_ManualProcessWindow_DiscreteInputs();
    // 计算 手动加工界面 料长范围
    void calculate_ManualProcessWindow_MaterialLengthMaxAndMin();


    // 读取 超长加工界面 寄存器
    void read_ExtraLong_ProcessWindow_Hold();
    // 读取 超长加工界面 线圈
    void read_ExtraLong_ProcessWindow_Coils();
    // 读取 超长加工界面 离散输入
    void read_ExtraLong_ProcessWindow_DiscreteInputs();
    // 计算 超长加工界面 料长范围
    void calculate_ExtraLong_ProcessWindow_MaterialLengthMaxAndMin();


    // 读取 超短加工界面 寄存器
    void read_ExtraShort_ProcessWindow_Hold();
    // 读取 超短加工界面 线圈
    void read_ExtraShort_ProcessWindow_Coils();
    // 读取 超短加工界面 离散输入
    void read_ExtraShort_ProcessWindow_DiscreteInputs();
    // 计算 超短加工界面 料长范围
    void calculate_ExtraShort_ProcessWindow_MaterialLengthMaxAndMin();


    // 读取 角码加工界面 寄存器
    void read_Corner_ProcessWindow_Hold();
    // 读取 角码加工界面 线圈
    void read_Corner_ProcessWindow_Coils();
    // 读取 角码加工界面 离散输入
    void read_Corner_ProcessWindow_DiscreteInputs();


    // 读取 本地排料加工界面 寄存器
    void read_Order_Process_Window_Hold();
    // 读取 本地料单加工界面 线圈
    void read_Order_Process_Window_Coils();



    // 读取 二维码料单界面 寄存器
    void read_QR_Code_Process_Window_Hold();
    // 读取 二维码料单界面 线圈
    void read_QR_Code_Process_Window_Coils();
    // 料单定位中继
    void set_List_Process_Window_Location();


    // 读取 网络料单界面 线圈
    void read_NetWork_Process_List_Coils();
    // 读取 网络料单界面 离散
    void read_NetWork_Process_List_DiscreteInputs();


    // 读取 管理界面 寄存器
    void read_Manager_Setting_Window_Hold();
    // 读取 管理界面 线圈
    void read_Manager_Setting_Window_Coils();
    // 读取 管理界面 离散输入
    void read_Manager_Setting_Window_DiscreteInput();


    // 读取 IO监控界面 离散
    void read_IO_Monitor_Window_DiscreteInputs();

    // 读取 打印机设置界面
    void read_Printer_Setting_Window_Hold();

    // 读取 打印机设置界面
    void read_Printer_Setting_Window_Coils();


    // 读取 设备参数界面 寄存器
    void read_Mechine_Parameter_Window_Hold();
    // 读取 设备参数界面 线圈
    void read_Mechine_Parameter_Window_Coils();



    // 读取 伺服参数设置界面 寄存器
    void read_Servo_Parameter_Window_Hold();
    // 读取 伺服参数设置界面 线圈
    void read_Servo_Parameter_Window_Coils();



    // 读取  托料架设置界面 寄存器
    void read_Hold_Setting_Window_Hold();
    // 读取  托料架设置界面 线圈
    void read_Hold_Setting_Window_Coils();
    // 读取  托料架设置界面 离散输入
    void read_Hold_Setting_Window_DiscreteInputs();



    // 读取 位置补偿界面 寄存器
    void read_Location_Compensate_Window_Hold();
    // 读取 位置补偿界面 线圈
    void read_Location_Compensate_Window_Coils();


    // 读取 任意位置补偿界面 寄存器
    void read_AnyLocation_Compensate_Window_Hold();
    // 读取 任意位置补偿界面 线圈
    void read_AnyLocation_Compensate_Window_Coils();

    // 自动打印功能 读取PLC 相关数据
    void AutoPrinterFunction();

    Q_INVOKABLE void read_CustomNumber_And_OrderNumber();





    QString MaterialHeightObservedValue() const;
    void setMaterialHeightObservedValue(const QString &newMaterialHeightObservedValue);

    QString MaterialLengthValue() const;
    void setMaterialLengthValue(const QString &newMaterialLengthValue);

    QString MaterialHeightValue() const;
    void setMaterialHeightValue(const QString &newMaterialHeightValue);

    QString SawsMode() const;
    void setSawsMode(const QString &newSawsMode);

    QString CutSegments() const;
    void setCutSegments(const QString &newCutSegments);

    QString CurrentSegments() const;
    void setCurrentSegments(const QString &newCurrentSegments);

    bool ObservingState() const;
    void setObservingState(bool newObservingState);

    bool ImpactState() const;
    void setImpactState(bool newImpactState);

    bool SawsStartState() const;
    void setSawsStartState(bool newSawsStartState);

    bool SawsOutState() const;
    void setSawsOutState(bool newSawsOutState);

    bool IO_X12() const;
    void setIO_X12(bool newIO_X12);

    bool IO_X13() const;
    void setIO_X13(bool newIO_X13);

    bool IO_X14() const;
    void setIO_X14(bool newIO_X14);

    bool IO_X15() const;
    void setIO_X15(bool newIO_X15);

    int QML_CurrentPage() const;
    void setQML_CurrentPage(int newQML_CurrentPage);

    bool RightAngleFeedBack() const;
    void setRightAngleFeedBack(bool newRightAngleFeedBack);

    bool LeftAngleFeedBack() const;
    void setLeftAngleFeedBack(bool newLeftAngleFeedBack);

    QString CurrentLocationValue() const;
    void setCurrentLocationValue(const QString &newCurrentLocationValue);

    QString OriginValue() const;
    void setOriginValue(const QString &newOriginValue);

    QString MaxCutLength() const;
    void setMaxCutLength(const QString &newMaxCutLength);

    QString Angle45SafeDistance() const;
    void setAngle45SafeDistance(const QString &newAngle45SafeDistance);

    QString Manual_MaterialLengthMax() const;
    void setManual_MaterialLengthMax(const QString &newManual_MaterialLengthMax);

    QString Manual_MaterialLengthMin() const;
    void setManual_MaterialLengthMin(const QString &newManual_MaterialLengthMin);

    bool MechineChangeAngleMode() const;
    void setMechineChangeAngleMode(bool newMechineChangeAngleMode);

    QString ExtraLong_MaterialLengthValue() const;
    void setExtraLong_MaterialLengthValue(const QString &newExtraLong_MaterialLengthValue);

    QString ExtraLong_CompensateValue() const;
    void setExtraLong_CompensateValue(const QString &newExtraLong_CompensateValue);

    QString ExtraLong_MaterialLengthMax() const;
    void setExtraLong_MaterialLengthMax(const QString &newExtraLong_MaterialLengthMax);

    QString ExtraLong_MaterialLengthMin() const;
    void setExtraLong_MaterialLengthMin(const QString &newExtraLong_MaterialLengthMin);

    QString ExtraShort_MaterialLengthValue() const;
    void setExtraShort_MaterialLengthValue(const QString &newExtraShort_MaterialLengthValue);

    QString ExtraShort_CompensateValue() const;
    void setExtraShort_CompensateValue(const QString &newExtraShort_CompensateValue);

    QString ExtraShort_PullBackDistance() const;
    void setExtraShort_PullBackDistance(const QString &newExtraShort_PullBackDistance);

    QString ExtraShort_MaterialLengthMax() const;
    void setExtraShort_MaterialLengthMax(const QString &newExtraShort_MaterialLengthMax);

    QString ExtraShort_MaterialLengthMin() const;
    void setExtraShort_MaterialLengthMin(const QString &newExtraShort_MaterialLengthMin);

    QString Corner_Current_Segments() const;
    void setCorner_Current_Segments(const QString &newCorner_Current_Segments);

    QString Corner_Worked_Segments() const;
    void setCorner_Worked_Segments(const QString &newCorner_Worked_Segments);

    QString Corner_Min_Length() const;
    void setCorner_Min_Length(const QString &newCorner_Min_Length);

    QString Corner_Material_Length() const;
    void setCorner_Material_Length(const QString &newCorner_Material_Length);

    QString Corner_Cut_Compensate() const;
    void setCorner_Cut_Compensate(const QString &newCorner_Cut_Compensate);

    QString Corner_Length() const;
    void setCorner_Length(const QString &newCorner_Length);

    QString Corner_Set_Segments() const;
    void setCorner_Set_Segments(const QString &newCorner_Set_Segments);

    bool Corner_Set_Err() const;
    void setCorner_Set_Err(bool newCorner_Set_Err);

    bool AutoObserveState() const;
    void setAutoObserveState(bool newAutoObserveState);

    bool PowerOffMode() const;
    void setPowerOffMode(bool newPowerOffMode);

    QString Location_Speed() const;
    void setLocation_Speed(const QString &newLocation_Speed);

    QString Manual_Speed() const;
    void setManual_Speed(const QString &newManual_Speed);

    QString Impact_Active_Time() const;
    void setImpact_Active_Time(const QString &newImpact_Active_Time);

    QString MaterialHeight_ObserveTime() const;
    void setMaterialHeight_ObserveTime(const QString &newMaterialHeight_ObserveTime);

    QString MaterialHeight_DisplaceMent() const;
    void setMaterialHeight_DisplaceMent(const QString &newMaterialHeight_DisplaceMent);

    QString LeftSaw_Out_Time() const;
    void setLeftSaw_Out_Time(const QString &newLeftSaw_Out_Time);

    QString RightSaw_Out_Time() const;
    void setRightSaw_Out_Time(const QString &newRightSaw_Out_Time);

    QString DoubleSaws_45_Compensate() const;
    void setDoubleSaws_45_Compensate(const QString &newDoubleSaws_45_Compensate);

    QString SingleSaw_45_Compensate() const;
    void setSingleSaw_45_Compensate(const QString &newSingleSaw_45_Compensate);

    QString Blow_Time() const;
    void setBlow_Time(const QString &newBlow_Time);

    QString PowerOff_Delay_Time() const;
    void setPowerOff_Delay_Time(const QString &newPowerOff_Delay_Time);

    QString Encoder_Value() const;
    void setEncoder_Value(const QString &newEncoder_Value);

    QString PulseNumber_PerRound() const;
    void setPulseNumber_PerRound(const QString &newPulseNumber_PerRound);

    QString DistanceNumber_PerRound() const;
    void setDistanceNumber_PerRound(const QString &newDistanceNumber_PerRound);

    QString TimeOf_ACC_DEC() const;
    void setTimeOf_ACC_DEC(const QString &newTimeOf_ACC_DEC);

    QString Reverse_Soft_Limit() const;
    void setReverse_Soft_Limit(const QString &newReverse_Soft_Limit);

    QString FindZero_HighSpeed() const;
    void setFindZero_HighSpeed(const QString &newFindZero_HighSpeed);

    QString FindZero_LowSpeed() const;
    void setFindZero_LowSpeed(const QString &newFindZero_LowSpeed);

    QString Brake_OpenTime() const;
    void setBrake_OpenTime(const QString &newBrake_OpenTime);

    QString Brake_CloseTime() const;
    void setBrake_CloseTime(const QString &newBrake_CloseTime);

    bool ServoType() const;
    void setServoType(bool newServoType);

    QString Hold_Safe_Distance() const;
    void setHold_Safe_Distance(const QString &newHold_Safe_Distance);

    QString Front_Hold_Location() const;
    void setFront_Hold_Location(const QString &newFront_Hold_Location);

    QString Mid_Hold_Location_Down_Limit() const;
    void setMid_Hold_Location_Down_Limit(const QString &newMid_Hold_Location_Down_Limit);

    QString Mid_Hold_Location_Up_Limit() const;
    void setMid_Hold_Location_Up_Limit(const QString &newMid_Hold_Location_Up_Limit);

    QString Back_Hold_Location() const;
    void setBack_Hold_Location(const QString &newBack_Hold_Location);

    bool IO_Y15() const;
    void setIO_Y15(bool newIO_Y15);

    bool IO_Y16() const;
    void setIO_Y16(bool newIO_Y16);

    bool IO_Y17() const;
    void setIO_Y17(bool newIO_Y17);

    bool Front_Hold_BackOver() const;
    void setFront_Hold_BackOver(bool newFront_Hold_BackOver);

    bool Mid_Hold_BackOver() const;
    void setMid_Hold_BackOver(bool newMid_Hold_BackOver);

    bool Back_Hold_BackOver() const;
    void setBack_Hold_BackOver(bool newBack_Hold_BackOver);

    bool Front_Hold_Enable() const;
    void setFront_Hold_Enable(bool newFront_Hold_Enable);

    bool Mid_Hold_Enable() const;
    void setMid_Hold_Enable(bool newMid_Hold_Enable);

    bool Back_Hold_Enable() const;
    void setBack_Hold_Enable(bool newBack_Hold_Enable);

    bool Front_Hold_Mode() const;
    void setFront_Hold_Mode(bool newFront_Hold_Mode);

    bool Back_Hold_Mode() const;
    void setBack_Hold_Mode(bool newBack_Hold_Mode);

    bool Hold_Exist() const;
    void setHold_Exist(bool newHold_Exist);

    QString Location_Compensate_01() const;
    void setLocation_Compensate_01(const QString &newLocation_Compensate_01);

    QString Location_Compensate_02() const;
    void setLocation_Compensate_02(const QString &newLocation_Compensate_02);

    QString Location_Compensate_03() const;
    void setLocation_Compensate_03(const QString &newLocation_Compensate_03);

    QString Location_Compensate_04() const;
    void setLocation_Compensate_04(const QString &newLocation_Compensate_04);

    QString Location_Compensate_05() const;
    void setLocation_Compensate_05(const QString &newLocation_Compensate_05);

    QString Location_Compensate_06() const;
    void setLocation_Compensate_06(const QString &newLocation_Compensate_06);

    QString Location_Compensate_07() const;
    void setLocation_Compensate_07(const QString &newLocation_Compensate_07);

    QString Location_Compensate_08() const;
    void setLocation_Compensate_08(const QString &newLocation_Compensate_08);

    QString Location_Compensate_09() const;
    void setLocation_Compensate_09(const QString &newLocation_Compensate_09);

    QString Location_Compensate_10() const;
    void setLocation_Compensate_10(const QString &newLocation_Compensate_10);

    QString Location_Compensate_11() const;
    void setLocation_Compensate_11(const QString &newLocation_Compensate_11);

    QString Location_Compensate_12() const;
    void setLocation_Compensate_12(const QString &newLocation_Compensate_12);

    QString Location_Compensate_13() const;
    void setLocation_Compensate_13(const QString &newLocation_Compensate_13);

    QString Location_Compensate_14() const;
    void setLocation_Compensate_14(const QString &newLocation_Compensate_14);

    QString Location_Compensate_15() const;
    void setLocation_Compensate_15(const QString &newLocation_Compensate_15);

    QString Location_Compensate_16() const;
    void setLocation_Compensate_16(const QString &newLocation_Compensate_16);

    QString Location_Compensate_17() const;
    void setLocation_Compensate_17(const QString &newLocation_Compensate_17);

    QString Location_Compensate_18() const;
    void setLocation_Compensate_18(const QString &newLocation_Compensate_18);

    QString Location_Compensate_19() const;
    void setLocation_Compensate_19(const QString &newLocation_Compensate_19);

    QString Location_Compensate_20() const;
    void setLocation_Compensate_20(const QString &newLocation_Compensate_20);

    QString SpecialCompensate_DownLimit() const;
    void setSpecialCompensate_DownLimit(const QString &newSpecialCompensate_DownLimit);

    QString SpecialCompensate_UpLimit() const;
    void setSpecialCompensate_UpLimit(const QString &newSpecialCompensate_UpLimit);

    QString SpecialCompensateValue() const;
    void setSpecialCompensateValue(const QString &newSpecialCompensateValue);



    bool SpecialCompensate_State() const;
    void setSpecialCompensate_State(bool newSpecialCompensate_State);

    QString AnyLocation_Compensate_DownLimit_01() const;
    void setAnyLocation_Compensate_DownLimit_01(const QString &newAnyLocation_Compensate_DownLimit_01);

    QString AnyLocation_Compensate_UpLimit_01() const;
    void setAnyLocation_Compensate_UpLimit_01(const QString &newAnyLocation_Compensate_UpLimit_01);

    QString AnyLocation_Compensate_01() const;
    void setAnyLocation_Compensate_01(const QString &newAnyLocation_Compensate_01);

    QString AnyLocation_Compensate_DownLimit_02() const;
    void setAnyLocation_Compensate_DownLimit_02(const QString &newAnyLocation_Compensate_DownLimit_02);

    QString AnyLocation_Compensate_UpLimit_02() const;
    void setAnyLocation_Compensate_UpLimit_02(const QString &newAnyLocation_Compensate_UpLimit_02);

    QString AnyLocation_Compensate_02() const;
    void setAnyLocation_Compensate_02(const QString &newAnyLocation_Compensate_02);

    QString AnyLocation_Compensate_DownLimit_03() const;
    void setAnyLocation_Compensate_DownLimit_03(const QString &newAnyLocation_Compensate_DownLimit_03);

    QString AnyLocation_Compensate_UpLimit_03() const;
    void setAnyLocation_Compensate_UpLimit_03(const QString &newAnyLocation_Compensate_UpLimit_03);

    QString AnyLocation_Compensate_03() const;
    void setAnyLocation_Compensate_03(const QString &newAnyLocation_Compensate_03);

    QString AnyLocation_Compensate_DownLimit_04() const;
    void setAnyLocation_Compensate_DownLimit_04(const QString &newAnyLocation_Compensate_DownLimit_04);

    QString AnyLocation_Compensate_UpLimit_04() const;
    void setAnyLocation_Compensate_UpLimit_04(const QString &newAnyLocation_Compensate_UpLimit_04);

    QString AnyLocation_Compensate_04() const;
    void setAnyLocation_Compensate_04(const QString &newAnyLocation_Compensate_04);

    QString AnyLocation_Compensate_DownLimit_05() const;
    void setAnyLocation_Compensate_DownLimit_05(const QString &newAnyLocation_Compensate_DownLimit_05);

    QString AnyLocation_Compensate_UpLimit_05() const;
    void setAnyLocation_Compensate_UpLimit_05(const QString &newAnyLocation_Compensate_UpLimit_05);

    QString AnyLocation_Compensate_05() const;
    void setAnyLocation_Compensate_05(const QString &newAnyLocation_Compensate_05);

    QString AnyLocation_Compensate_DownLimit_06() const;
    void setAnyLocation_Compensate_DownLimit_06(const QString &newAnyLocation_Compensate_DownLimit_06);

    QString AnyLocation_Compensate_UpLimit_06() const;
    void setAnyLocation_Compensate_UpLimit_06(const QString &newAnyLocation_Compensate_UpLimit_06);

    QString AnyLocation_Compensate_06() const;
    void setAnyLocation_Compensate_06(const QString &newAnyLocation_Compensate_06);

    QString AnyLocation_Compensate_DownLimit_07() const;
    void setAnyLocation_Compensate_DownLimit_07(const QString &newAnyLocation_Compensate_DownLimit_07);

    QString AnyLocation_Compensate_UpLimit_07() const;
    void setAnyLocation_Compensate_UpLimit_07(const QString &newAnyLocation_Compensate_UpLimit_07);

    QString AnyLocation_Compensate_07() const;
    void setAnyLocation_Compensate_07(const QString &newAnyLocation_Compensate_07);

    QString AnyLocation_Compensate_DownLimit_08() const;
    void setAnyLocation_Compensate_DownLimit_08(const QString &newAnyLocation_Compensate_DownLimit_08);

    QString AnyLocation_Compensate_UpLimit_08() const;
    void setAnyLocation_Compensate_UpLimit_08(const QString &newAnyLocation_Compensate_UpLimit_08);

    QString AnyLocation_Compensate_08() const;
    void setAnyLocation_Compensate_08(const QString &newAnyLocation_Compensate_08);

    QString AnyLocation_Compensate_DownLimit_09() const;
    void setAnyLocation_Compensate_DownLimit_09(const QString &newAnyLocation_Compensate_DownLimit_09);

    QString AnyLocation_Compensate_UpLimit_09() const;
    void setAnyLocation_Compensate_UpLimit_09(const QString &newAnyLocation_Compensate_UpLimit_09);

    QString AnyLocation_Compensate_09() const;
    void setAnyLocation_Compensate_09(const QString &newAnyLocation_Compensate_09);

    QString AnyLocation_Compensate_DownLimit_10() const;
    void setAnyLocation_Compensate_DownLimit_10(const QString &newAnyLocation_Compensate_DownLimit_10);

    QString AnyLocation_Compensate_UpLimit_10() const;
    void setAnyLocation_Compensate_UpLimit_10(const QString &newAnyLocation_Compensate_UpLimit_10);

    QString AnyLocation_Compensate_10() const;
    void setAnyLocation_Compensate_10(const QString &newAnyLocation_Compensate_10);

    QString AnyLocation_Compensate_DownLimit_11() const;
    void setAnyLocation_Compensate_DownLimit_11(const QString &newAnyLocation_Compensate_DownLimit_11);

    QString AnyLocation_Compensate_UpLimit_11() const;
    void setAnyLocation_Compensate_UpLimit_11(const QString &newAnyLocation_Compensate_UpLimit_11);

    QString AnyLocation_Compensate_11() const;
    void setAnyLocation_Compensate_11(const QString &newAnyLocation_Compensate_11);

    QString AnyLocation_Compensate_DownLimit_12() const;
    void setAnyLocation_Compensate_DownLimit_12(const QString &newAnyLocation_Compensate_DownLimit_12);

    QString AnyLocation_Compensate_UpLimit_12() const;
    void setAnyLocation_Compensate_UpLimit_12(const QString &newAnyLocation_Compensate_UpLimit_12);

    QString AnyLocation_Compensate_12() const;
    void setAnyLocation_Compensate_12(const QString &newAnyLocation_Compensate_12);

    QString AnyLocation_Compensate_DownLimit_13() const;
    void setAnyLocation_Compensate_DownLimit_13(const QString &newAnyLocation_Compensate_DownLimit_13);

    QString AnyLocation_Compensate_UpLimit_13() const;
    void setAnyLocation_Compensate_UpLimit_13(const QString &newAnyLocation_Compensate_UpLimit_13);

    QString AnyLocation_Compensate_13() const;
    void setAnyLocation_Compensate_13(const QString &newAnyLocation_Compensate_13);

    QString AnyLocation_Compensate_DownLimit_14() const;
    void setAnyLocation_Compensate_DownLimit_14(const QString &newAnyLocation_Compensate_DownLimit_14);

    QString AnyLocation_Compensate_UpLimit_14() const;
    void setAnyLocation_Compensate_UpLimit_14(const QString &newAnyLocation_Compensate_UpLimit_14);

    QString AnyLocation_Compensate_14() const;
    void setAnyLocation_Compensate_14(const QString &newAnyLocation_Compensate_14);

    QString AnyLocation_Compensate_DownLimit_15() const;
    void setAnyLocation_Compensate_DownLimit_15(const QString &newAnyLocation_Compensate_DownLimit_15);

    QString AnyLocation_Compensate_UpLimit_15() const;
    void setAnyLocation_Compensate_UpLimit_15(const QString &newAnyLocation_Compensate_UpLimit_15);

    QString AnyLocation_Compensate_15() const;
    void setAnyLocation_Compensate_15(const QString &newAnyLocation_Compensate_15);

    QString AnyLocation_Compensate_DownLimit_16() const;
    void setAnyLocation_Compensate_DownLimit_16(const QString &newAnyLocation_Compensate_DownLimit_16);

    QString AnyLocation_Compensate_UpLimit_16() const;
    void setAnyLocation_Compensate_UpLimit_16(const QString &newAnyLocation_Compensate_UpLimit_16);

    QString AnyLocation_Compensate_16() const;
    void setAnyLocation_Compensate_16(const QString &newAnyLocation_Compensate_16);

    QString AnyLocation_Compensate_DownLimit_17() const;
    void setAnyLocation_Compensate_DownLimit_17(const QString &newAnyLocation_Compensate_DownLimit_17);

    QString AnyLocation_Compensate_UpLimit_17() const;
    void setAnyLocation_Compensate_UpLimit_17(const QString &newAnyLocation_Compensate_UpLimit_17);

    QString AnyLocation_Compensate_17() const;
    void setAnyLocation_Compensate_17(const QString &newAnyLocation_Compensate_17);

    QString AnyLocation_Compensate_DownLimit_18() const;
    void setAnyLocation_Compensate_DownLimit_18(const QString &newAnyLocation_Compensate_DownLimit_18);

    QString AnyLocation_Compensate_UpLimit_18() const;
    void setAnyLocation_Compensate_UpLimit_18(const QString &newAnyLocation_Compensate_UpLimit_18);

    QString AnyLocation_Compensate_18() const;
    void setAnyLocation_Compensate_18(const QString &newAnyLocation_Compensate_18);

    QString AnyLocation_Compensate_DownLimit_19() const;
    void setAnyLocation_Compensate_DownLimit_19(const QString &newAnyLocation_Compensate_DownLimit_19);

    QString AnyLocation_Compensate_UpLimit_19() const;
    void setAnyLocation_Compensate_UpLimit_19(const QString &newAnyLocation_Compensate_UpLimit_19);

    QString AnyLocation_Compensate_19() const;
    void setAnyLocation_Compensate_19(const QString &newAnyLocation_Compensate_19);

    QString AnyLocation_Compensate_DownLimit_20() const;
    void setAnyLocation_Compensate_DownLimit_20(const QString &newAnyLocation_Compensate_DownLimit_20);

    QString AnyLocation_Compensate_UpLimit_20() const;
    void setAnyLocation_Compensate_UpLimit_20(const QString &newAnyLocation_Compensate_UpLimit_20);

    QString AnyLocation_Compensate_20() const;
    void setAnyLocation_Compensate_20(const QString &newAnyLocation_Compensate_20);

    bool AnyLocation_State01() const;
    void setAnyLocation_State01(bool newAnyLocation_State01);

    bool AnyLocation_State02() const;
    void setAnyLocation_State02(bool newAnyLocation_State02);

    bool AnyLocation_State03() const;
    void setAnyLocation_State03(bool newAnyLocation_State03);

    bool AnyLocation_State04() const;
    void setAnyLocation_State04(bool newAnyLocation_State04);

    bool AnyLocation_State05() const;
    void setAnyLocation_State05(bool newAnyLocation_State05);

    bool AnyLocation_State06() const;
    void setAnyLocation_State06(bool newAnyLocation_State06);

    bool AnyLocation_State07() const;
    void setAnyLocation_State07(bool newAnyLocation_State07);

    bool AnyLocation_State08() const;
    void setAnyLocation_State08(bool newAnyLocation_State08);

    bool AnyLocation_State09() const;
    void setAnyLocation_State09(bool newAnyLocation_State09);

    bool AnyLocation_State10() const;
    void setAnyLocation_State10(bool newAnyLocation_State10);

    bool AnyLocation_State11() const;
    void setAnyLocation_State11(bool newAnyLocation_State11);

    bool AnyLocation_State12() const;
    void setAnyLocation_State12(bool newAnyLocation_State12);

    bool AnyLocation_State13() const;
    void setAnyLocation_State13(bool newAnyLocation_State13);

    bool AnyLocation_State14() const;
    void setAnyLocation_State14(bool newAnyLocation_State14);

    bool AnyLocation_State15() const;
    void setAnyLocation_State15(bool newAnyLocation_State15);

    bool AnyLocation_State16() const;
    void setAnyLocation_State16(bool newAnyLocation_State16);

    bool AnyLocation_State17() const;
    void setAnyLocation_State17(bool newAnyLocation_State17);

    bool AnyLocation_State18() const;
    void setAnyLocation_State18(bool newAnyLocation_State18);

    bool AnyLocation_State19() const;
    void setAnyLocation_State19(bool newAnyLocation_State19);

    bool AnyLocation_State20() const;
    void setAnyLocation_State20(bool newAnyLocation_State20);

    bool IO_X0() const;
    void setIO_X0(bool newIO_X0);

    bool IO_X1() const;
    void setIO_X1(bool newIO_X1);

    bool IO_X2() const;
    void setIO_X2(bool newIO_X2);

    bool IO_X3() const;
    void setIO_X3(bool newIO_X3);

    bool IO_X5() const;
    void setIO_X5(bool newIO_X5);

    bool IO_X6() const;
    void setIO_X6(bool newIO_X6);

    bool IO_X7() const;
    void setIO_X7(bool newIO_X7);

    bool IO_X10() const;
    void setIO_X10(bool newIO_X10);

    bool IO_X11() const;
    void setIO_X11(bool newIO_X11);

    bool IO_X16() const;
    void setIO_X16(bool newIO_X16);

    bool IO_X17() const;
    void setIO_X17(bool newIO_X17);

    bool IO_X20() const;
    void setIO_X20(bool newIO_X20);

    bool IO_X21() const;
    void setIO_X21(bool newIO_X21);

    bool IO_X22() const;
    void setIO_X22(bool newIO_X22);

    bool IO_X23() const;
    void setIO_X23(bool newIO_X23);

    bool IO_X24() const;
    void setIO_X24(bool newIO_X24);

    bool IO_X25() const;
    void setIO_X25(bool newIO_X25);

    bool IO_Y0() const;
    void setIO_Y0(bool newIO_Y0);

    bool IO_Y1() const;
    void setIO_Y1(bool newIO_Y1);

    bool IO_Y2() const;
    void setIO_Y2(bool newIO_Y2);

    bool IO_Y3() const;
    void setIO_Y3(bool newIO_Y3);

    bool IO_Y4() const;
    void setIO_Y4(bool newIO_Y4);

    bool IO_Y5() const;
    void setIO_Y5(bool newIO_Y5);

    bool IO_Y6() const;
    void setIO_Y6(bool newIO_Y6);

    bool IO_Y7() const;
    void setIO_Y7(bool newIO_Y7);

    bool IO_Y10() const;
    void setIO_Y10(bool newIO_Y10);

    bool IO_Y11() const;
    void setIO_Y11(bool newIO_Y11);

    bool IO_Y12() const;
    void setIO_Y12(bool newIO_Y12);

    bool IO_Y13() const;
    void setIO_Y13(bool newIO_Y13);

    bool IO_Y14() const;
    void setIO_Y14(bool newIO_Y14);

    bool IO_Y20() const;
    void setIO_Y20(bool newIO_Y20);

    bool IO_Y21() const;
    void setIO_Y21(bool newIO_Y21);

    bool IO_Y22() const;
    void setIO_Y22(bool newIO_Y22);

    bool IO_Y23() const;
    void setIO_Y23(bool newIO_Y23);

    bool IO_Y24() const;
    void setIO_Y24(bool newIO_Y24);

    bool IO_Y25() const;
    void setIO_Y25(bool newIO_Y25);

    QString OrderNumber_OrderProcess() const;
    void setOrderNumber_OrderProcess(const QString &newOrderNumber_OrderProcess);

    QString WorkedCount_01_OrderProcess() const;
    void setWorkedCount_01_OrderProcess(const QString &newWorkedCount_01_OrderProcess);

    QString WorkedCount_02_OrderProcess() const;
    void setWorkedCount_02_OrderProcess(const QString &newWorkedCount_02_OrderProcess);

    QString WorkedCount_03_OrderProcess() const;
    void setWorkedCount_03_OrderProcess(const QString &newWorkedCount_03_OrderProcess);

    QString WorkedCount_04_OrderProcess() const;
    void setWorkedCount_04_OrderProcess(const QString &newWorkedCount_04_OrderProcess);

    QString WorkedCount_05_OrderProcess() const;
    void setWorkedCount_05_OrderProcess(const QString &newWorkedCount_05_OrderProcess);

    QString WorkedCount_06_OrderProcess() const;
    void setWorkedCount_06_OrderProcess(const QString &newWorkedCount_06_OrderProcess);

    QString WorkedCount_07_OrderProcess() const;
    void setWorkedCount_07_OrderProcess(const QString &newWorkedCount_07_OrderProcess);

    QString WorkedCount_08_OrderProcess() const;
    void setWorkedCount_08_OrderProcess(const QString &newWorkedCount_08_OrderProcess);

    QString WorkedCount_09_OrderProcess() const;
    void setWorkedCount_09_OrderProcess(const QString &newWorkedCount_09_OrderProcess);

    QString WorkedCount_10_OrderProcess() const;
    void setWorkedCount_10_OrderProcess(const QString &newWorkedCount_10_OrderProcess);

    QString WorkedCount_11_OrderProcess() const;
    void setWorkedCount_11_OrderProcess(const QString &newWorkedCount_11_OrderProcess);

    QString WorkedCount_12_OrderProcess() const;
    void setWorkedCount_12_OrderProcess(const QString &newWorkedCount_12_OrderProcess);

    QString WorkedCount_13_OrderProcess() const;
    void setWorkedCount_13_OrderProcess(const QString &newWorkedCount_13_OrderProcess);

    QString WorkedCount_14_OrderProcess() const;
    void setWorkedCount_14_OrderProcess(const QString &newWorkedCount_14_OrderProcess);

    QString WorkedCount_15_OrderProcess() const;
    void setWorkedCount_15_OrderProcess(const QString &newWorkedCount_15_OrderProcess);

    QString WorkedCount_16_OrderProcess() const;
    void setWorkedCount_16_OrderProcess(const QString &newWorkedCount_16_OrderProcess);

    QString WorkedCount_17_OrderProcess() const;
    void setWorkedCount_17_OrderProcess(const QString &newWorkedCount_17_OrderProcess);

    QString WorkedCount_18_OrderProcess() const;
    void setWorkedCount_18_OrderProcess(const QString &newWorkedCount_18_OrderProcess);

    QString WorkedCount_19_OrderProcess() const;
    void setWorkedCount_19_OrderProcess(const QString &newWorkedCount_19_OrderProcess);

    QString WorkedCount_20_OrderProcess() const;
    void setWorkedCount_20_OrderProcess(const QString &newWorkedCount_20_OrderProcess);

    QString OrderNumber_ListProcess() const;
    void setOrderNumber_ListProcess(const QString &newOrderNumber_ListProcess);

    QString MaterialLength01_ListProcess() const;
    void setMaterialLength01_ListProcess(const QString &newMaterialLength01_ListProcess);

    QString MaterialLength02_ListProcess() const;
    void setMaterialLength02_ListProcess(const QString &newMaterialLength02_ListProcess);

    QString MaterialLength03_ListProcess() const;
    void setMaterialLength03_ListProcess(const QString &newMaterialLength03_ListProcess);

    QString MaterialLength04_ListProcess() const;
    void setMaterialLength04_ListProcess(const QString &newMaterialLength04_ListProcess);

    QString MaterialLength05_ListProcess() const;
    void setMaterialLength05_ListProcess(const QString &newMaterialLength05_ListProcess);

    QString MaterialLength06_ListProcess() const;
    void setMaterialLength06_ListProcess(const QString &newMaterialLength06_ListProcess);

    QString MaterialLength07_ListProcess() const;
    void setMaterialLength07_ListProcess(const QString &newMaterialLength07_ListProcess);

    QString MaterialLength08_ListProcess() const;
    void setMaterialLength08_ListProcess(const QString &newMaterialLength08_ListProcess);

    QString MaterialLength09_ListProcess() const;
    void setMaterialLength09_ListProcess(const QString &newMaterialLength09_ListProcess);

    QString MaterialLength10_ListProcess() const;
    void setMaterialLength10_ListProcess(const QString &newMaterialLength10_ListProcess);

    QString MaterialLength11_ListProcess() const;
    void setMaterialLength11_ListProcess(const QString &newMaterialLength11_ListProcess);

    QString MaterialLength12_ListProcess() const;
    void setMaterialLength12_ListProcess(const QString &newMaterialLength12_ListProcess);

    QString MaterialLength13_ListProcess() const;
    void setMaterialLength13_ListProcess(const QString &newMaterialLength13_ListProcess);

    QString MaterialLength14_ListProcess() const;
    void setMaterialLength14_ListProcess(const QString &newMaterialLength14_ListProcess);

    QString MaterialLength15_ListProcess() const;
    void setMaterialLength15_ListProcess(const QString &newMaterialLength15_ListProcess);

    QString MaterialLength16_ListProcess() const;
    void setMaterialLength16_ListProcess(const QString &newMaterialLength16_ListProcess);

    QString MaterialLength17_ListProcess() const;
    void setMaterialLength17_ListProcess(const QString &newMaterialLength17_ListProcess);

    QString MaterialLength18_ListProcess() const;
    void setMaterialLength18_ListProcess(const QString &newMaterialLength18_ListProcess);

    QString MaterialLength19_ListProcess() const;
    void setMaterialLength19_ListProcess(const QString &newMaterialLength19_ListProcess);

    QString MaterialLength20_ListProcess() const;
    void setMaterialLength20_ListProcess(const QString &newMaterialLength20_ListProcess);

    QString LeftAngle_01_ListProcess() const;
    void setLeftAngle_01_ListProcess(const QString &newLeftAngle_01_ListProcess);

    QString RightAngle_01_ListProcess() const;
    void setRightAngle_01_ListProcess(const QString &newRightAngle_01_ListProcess);

    QString LeftAngle_02_ListProcess() const;
    void setLeftAngle_02_ListProcess(const QString &newLeftAngle_02_ListProcess);

    QString RightAngle_02_ListProcess() const;
    void setRightAngle_02_ListProcess(const QString &newRightAngle_02_ListProcess);

    QString LeftAngle_03_ListProcess() const;
    void setLeftAngle_03_ListProcess(const QString &newLeftAngle_03_ListProcess);

    QString RightAngle_03_ListProcess() const;
    void setRightAngle_03_ListProcess(const QString &newRightAngle_03_ListProcess);

    QString LeftAngle_04_ListProcess() const;
    void setLeftAngle_04_ListProcess(const QString &newLeftAngle_04_ListProcess);

    QString RightAngle_04_ListProcess() const;
    void setRightAngle_04_ListProcess(const QString &newRightAngle_04_ListProcess);

    QString LeftAngle_05_ListProcess() const;
    void setLeftAngle_05_ListProcess(const QString &newLeftAngle_05_ListProcess);

    QString RightAngle_05_ListProcess() const;
    void setRightAngle_05_ListProcess(const QString &newRightAngle_05_ListProcess);

    QString LeftAngle_06_ListProcess() const;
    void setLeftAngle_06_ListProcess(const QString &newLeftAngle_06_ListProcess);

    QString RightAngle_06_ListProcess() const;
    void setRightAngle_06_ListProcess(const QString &newRightAngle_06_ListProcess);

    QString LeftAngle_07_ListProcess() const;
    void setLeftAngle_07_ListProcess(const QString &newLeftAngle_07_ListProcess);

    QString RightAngle_07_ListProcess() const;
    void setRightAngle_07_ListProcess(const QString &newRightAngle_07_ListProcess);

    QString LeftAngle_08_ListProcess() const;
    void setLeftAngle_08_ListProcess(const QString &newLeftAngle_08_ListProcess);

    QString RightAngle_08_ListProcess() const;
    void setRightAngle_08_ListProcess(const QString &newRightAngle_08_ListProcess);

    QString LeftAngle_09_ListProcess() const;
    void setLeftAngle_09_ListProcess(const QString &newLeftAngle_09_ListProcess);

    QString RightAngle_09_ListProcess() const;
    void setRightAngle_09_ListProcess(const QString &newRightAngle_09_ListProcess);

    QString LeftAngle_10_ListProcess() const;
    void setLeftAngle_10_ListProcess(const QString &newLeftAngle_10_ListProcess);

    QString RightAngle_10_ListProcess() const;
    void setRightAngle_10_ListProcess(const QString &newRightAngle_10_ListProcess);

    QString LeftAngle_11_ListProcess() const;
    void setLeftAngle_11_ListProcess(const QString &newLeftAngle_11_ListProcess);

    QString RightAngle_11_ListProcess() const;
    void setRightAngle_11_ListProcess(const QString &newRightAngle_11_ListProcess);

    QString LeftAngle_12_ListProcess() const;
    void setLeftAngle_12_ListProcess(const QString &newLeftAngle_12_ListProcess);

    QString RightAngle_12_ListProcess() const;
    void setRightAngle_12_ListProcess(const QString &newRightAngle_12_ListProcess);

    QString LeftAngle_13_ListProcess() const;
    void setLeftAngle_13_ListProcess(const QString &newLeftAngle_13_ListProcess);

    QString RightAngle_13_ListProcess() const;
    void setRightAngle_13_ListProcess(const QString &newRightAngle_13_ListProcess);

    QString LeftAngle_14_ListProcess() const;
    void setLeftAngle_14_ListProcess(const QString &newLeftAngle_14_ListProcess);

    QString RightAngle_14_ListProcess() const;
    void setRightAngle_14_ListProcess(const QString &newRightAngle_14_ListProcess);

    QString LeftAngle_15_ListProcess() const;
    void setLeftAngle_15_ListProcess(const QString &newLeftAngle_15_ListProcess);

    QString RightAngle_15_ListProcess() const;
    void setRightAngle_15_ListProcess(const QString &newRightAngle_15_ListProcess);

    QString LeftAngle_16_ListProcess() const;
    void setLeftAngle_16_ListProcess(const QString &newLeftAngle_16_ListProcess);

    QString RightAngle_16_ListProcess() const;
    void setRightAngle_16_ListProcess(const QString &newRightAngle_16_ListProcess);

    QString LeftAngle_17_ListProcess() const;
    void setLeftAngle_17_ListProcess(const QString &newLeftAngle_17_ListProcess);

    QString RightAngle_17_ListProcess() const;
    void setRightAngle_17_ListProcess(const QString &newRightAngle_17_ListProcess);

    QString LeftAngle_18_ListProcess() const;
    void setLeftAngle_18_ListProcess(const QString &newLeftAngle_18_ListProcess);

    QString RightAngle_18_ListProcess() const;
    void setRightAngle_18_ListProcess(const QString &newRightAngle_18_ListProcess);

    QString LeftAngle_19_ListProcess() const;
    void setLeftAngle_19_ListProcess(const QString &newLeftAngle_19_ListProcess);

    QString RightAngle_19_ListProcess() const;
    void setRightAngle_19_ListProcess(const QString &newRightAngle_19_ListProcess);

    QString LeftAngle_20_ListProcess() const;
    void setLeftAngle_20_ListProcess(const QString &newLeftAngle_20_ListProcess);

    QString RightAngle_20_ListProcess() const;
    void setRightAngle_20_ListProcess(const QString &newRightAngle_20_ListProcess);

    QString CutCount_01_ListProcess() const;
    void setCutCount_01_ListProcess(const QString &newCutCount_01_ListProcess);

    QString CutCount_02_ListProcess() const;
    void setCutCount_02_ListProcess(const QString &newCutCount_02_ListProcess);

    QString CutCount_03_ListProcess() const;
    void setCutCount_03_ListProcess(const QString &newCutCount_03_ListProcess);

    QString CutCount_04_ListProcess() const;
    void setCutCount_04_ListProcess(const QString &newCutCount_04_ListProcess);

    QString CutCount_05_ListProcess() const;
    void setCutCount_05_ListProcess(const QString &newCutCount_05_ListProcess);

    QString CutCount_06_ListProcess() const;
    void setCutCount_06_ListProcess(const QString &newCutCount_06_ListProcess);

    QString CutCount_07_ListProcess() const;
    void setCutCount_07_ListProcess(const QString &newCutCount_07_ListProcess);

    QString CutCount_08_ListProcess() const;
    void setCutCount_08_ListProcess(const QString &newCutCount_08_ListProcess);

    QString CutCount_09_ListProcess() const;
    void setCutCount_09_ListProcess(const QString &newCutCount_09_ListProcess);

    QString CutCount_10_ListProcess() const;
    void setCutCount_10_ListProcess(const QString &newCutCount_10_ListProcess);

    QString CutCount_11_ListProcess() const;
    void setCutCount_11_ListProcess(const QString &newCutCount_11_ListProcess);

    QString CutCount_12_ListProcess() const;
    void setCutCount_12_ListProcess(const QString &newCutCount_12_ListProcess);

    QString CutCount_13_ListProcess() const;
    void setCutCount_13_ListProcess(const QString &newCutCount_13_ListProcess);

    QString CutCount_14_ListProcess() const;
    void setCutCount_14_ListProcess(const QString &newCutCount_14_ListProcess);

    QString CutCount_15_ListProcess() const;
    void setCutCount_15_ListProcess(const QString &newCutCount_15_ListProcess);

    QString CutCount_16_ListProcess() const;
    void setCutCount_16_ListProcess(const QString &newCutCount_16_ListProcess);

    QString CutCount_17_ListProcess() const;
    void setCutCount_17_ListProcess(const QString &newCutCount_17_ListProcess);

    QString CutCount_18_ListProcess() const;
    void setCutCount_18_ListProcess(const QString &newCutCount_18_ListProcess);

    QString CutCount_19_ListProcess() const;
    void setCutCount_19_ListProcess(const QString &newCutCount_19_ListProcess);

    QString CutCount_20_ListProcess() const;
    void setCutCount_20_ListProcess(const QString &newCutCount_20_ListProcess);

    QString WorkedCount_01_ListProcess() const;
    void setWorkedCount_01_ListProcess(const QString &newWorkedCount_01_ListProcess);

    QString WorkedCount_02_ListProcess() const;
    void setWorkedCount_02_ListProcess(const QString &newWorkedCount_02_ListProcess);

    QString WorkedCount_03_ListProcess() const;
    void setWorkedCount_03_ListProcess(const QString &newWorkedCount_03_ListProcess);

    QString WorkedCount_04_ListProcess() const;
    void setWorkedCount_04_ListProcess(const QString &newWorkedCount_04_ListProcess);

    QString WorkedCount_05_ListProcess() const;
    void setWorkedCount_05_ListProcess(const QString &newWorkedCount_05_ListProcess);

    QString WorkedCount_06_ListProcess() const;
    void setWorkedCount_06_ListProcess(const QString &newWorkedCount_06_ListProcess);

    QString WorkedCount_07_ListProcess() const;
    void setWorkedCount_07_ListProcess(const QString &newWorkedCount_07_ListProcess);

    QString WorkedCount_08_ListProcess() const;
    void setWorkedCount_08_ListProcess(const QString &newWorkedCount_08_ListProcess);

    QString WorkedCount_09_ListProcess() const;
    void setWorkedCount_09_ListProcess(const QString &newWorkedCount_09_ListProcess);

    QString WorkedCount_10_ListProcess() const;
    void setWorkedCount_10_ListProcess(const QString &newWorkedCount_10_ListProcess);

    QString WorkedCount_11_ListProcess() const;
    void setWorkedCount_11_ListProcess(const QString &newWorkedCount_11_ListProcess);

    QString WorkedCount_12_ListProcess() const;
    void setWorkedCount_12_ListProcess(const QString &newWorkedCount_12_ListProcess);

    QString WorkedCount_13_ListProcess() const;
    void setWorkedCount_13_ListProcess(const QString &newWorkedCount_13_ListProcess);

    QString WorkedCount_14_ListProcess() const;
    void setWorkedCount_14_ListProcess(const QString &newWorkedCount_14_ListProcess);

    QString WorkedCount_15_ListProcess() const;
    void setWorkedCount_15_ListProcess(const QString &newWorkedCount_15_ListProcess);

    QString WorkedCount_16_ListProcess() const;
    void setWorkedCount_16_ListProcess(const QString &newWorkedCount_16_ListProcess);

    QString WorkedCount_17_ListProcess() const;
    void setWorkedCount_17_ListProcess(const QString &newWorkedCount_17_ListProcess);

    QString WorkedCount_18_ListProcess() const;
    void setWorkedCount_18_ListProcess(const QString &newWorkedCount_18_ListProcess);

    QString WorkedCount_19_ListProcess() const;
    void setWorkedCount_19_ListProcess(const QString &newWorkedCount_19_ListProcess);

    QString WorkedCount_20_ListProcess() const;
    void setWorkedCount_20_ListProcess(const QString &newWorkedCount_20_ListProcess);

    bool Location_Rely_ListProcess() const;
    void setLocation_Rely_ListProcess(bool newLocation_Rely_ListProcess);

    bool Warning_Jerk() const;
    void setWarning_Jerk(bool newWarning_Jerk);

    bool Warning_Servo() const;
    void setWarning_Servo(bool newWarning_Servo);

    bool Warning_Front_Soft_Limit_Over() const;
    void setWarning_Front_Soft_Limit_Over(bool newWarning_Front_Soft_Limit_Over);

    bool Warning_Back_Soft_Limit_Over() const;
    void setWarning_Back_Soft_Limit_Over(bool newWarning_Back_Soft_Limit_Over);

    bool M_42() const;
    void setM_42(bool newM_42);

    bool M_43() const;
    void setM_43(bool newM_43);

    bool M_47() const;
    void setM_47(bool newM_47);

    bool M_52() const;
    void setM_52(bool newM_52);

    bool M_56() const;
    void setM_56(bool newM_56);

    bool M_57() const;
    void setM_57(bool newM_57);

    bool M_58() const;
    void setM_58(bool newM_58);

    bool M_59() const;
    void setM_59(bool newM_59);

    bool M_64() const;
    void setM_64(bool newM_64);

    bool M_68() const;
    void setM_68(bool newM_68);

    bool M_69() const;
    void setM_69(bool newM_69);

    bool M_73() const;
    void setM_73(bool newM_73);

    bool M_76() const;
    void setM_76(bool newM_76);

    bool M_77() const;
    void setM_77(bool newM_77);

    bool M_80() const;
    void setM_80(bool newM_80);

    bool M_134() const;
    void setM_134(bool newM_134);

    bool M_137() const;
    void setM_137(bool newM_137);

    bool M_143() const;
    void setM_143(bool newM_143);

    bool M_149() const;
    void setM_149(bool newM_149);

    bool M_152() const;
    void setM_152(bool newM_152);

    bool M_153() const;
    void setM_153(bool newM_153);

    bool M_159() const;
    void setM_159(bool newM_159);

    bool M_164() const;
    void setM_164(bool newM_164);

    bool M_170() const;
    void setM_170(bool newM_170);

    bool M_196() const;
    void setM_196(bool newM_196);

    bool M_197() const;
    void setM_197(bool newM_197);

    bool M_250() const;
    void setM_250(bool newM_250);

    bool M_251() const;
    void setM_251(bool newM_251);

    bool M_252() const;
    void setM_252(bool newM_252);

    QString DoubleSaws_StartDelay() const;
    void setDoubleSaws_StartDelay(const QString &newDoubleSaws_StartDelay);

    bool M_528() const;
    void setM_528(bool newM_528);

    bool M_510() const;
    void setM_510(bool newM_510);

    bool M_400() const;
    void setM_400(bool newM_400);

    bool M_398() const;
    void setM_398(bool newM_398);

    bool M_397() const;
    void setM_397(bool newM_397);

    bool M_500() const;
    void setM_500(bool newM_500);

    bool M_501() const;
    void setM_501(bool newM_501);

    bool M_393() const;
    void setM_393(bool newM_393);

    bool M_502() const;
    void setM_502(bool newM_502);

    bool M_503() const;
    void setM_503(bool newM_503);

    bool M_529() const;
    void setM_529(bool newM_529);

    bool M_530() const;
    void setM_530(bool newM_530);

    bool M_399() const;
    void setM_399(bool newM_399);

    bool M_511() const;
    void setM_511(bool newM_511);

    bool LockMechine_Flag() const;
    void setLockMechine_Flag(bool newLockMechine_Flag);

    QString Wait_Worked_MaterialLength() const;
    void setWait_Worked_MaterialLength(const QString &newWait_Worked_MaterialLength);

    QString PLC_Customer_Number() const;
    void setPLC_Customer_Number(const QString &newPLC_Customer_Number);

    QString PLC_Order_Number() const;
    void setPLC_Order_Number(const QString &newPLC_Order_Number);

    int QR_Code_CurrentType() const;
    void setQR_Code_CurrentType(int newQR_Code_CurrentType);

    QString Input_Passwd() const;
    void setInput_Passwd(const QString &newInput_Passwd);

    QString Circle_Runing_State() const;
    void setCircle_Runing_State(const QString &newCircle_Runing_State);

    QString Circle_Mode() const;
    void setCircle_Mode(const QString &newCircle_Mode);

    QString Order_Number_Circle() const;
    void setOrder_Number_Circle(const QString &newOrder_Number_Circle);

    bool M_505() const;
    void setM_505(bool newM_505);

    bool M_506() const;
    void setM_506(bool newM_506);

    bool M_507() const;
    void setM_507(bool newM_507);

    QString Tiny_Move_Distance() const;
    void setTiny_Move_Distance(const QString &newTiny_Move_Distance);

    QString Left_Pull_Delay() const;
    void setLeft_Pull_Delay(const QString &newLeft_Pull_Delay);

    QString NetWork_CurrentPages() const;
    void setNetWork_CurrentPages(const QString &newNetWork_CurrentPages);

    QString NetWork_CountPage() const;
    void setNetWork_CountPage(const QString &newNetWork_CountPage);


    bool NetWork_M61() const;
    void setNetWork_M61(bool newNetWork_M61);

    bool NetWork_M96() const;
    void setNetWork_M96(bool newNetWork_M96);

    bool NetWork_M97() const;
    void setNetWork_M97(bool newNetWork_M97);

signals:

    // 报警信号
    void warning_Signal_Changed_Sig(QString);

    // 触发打印机动作信号
    void printer_Active_Sig(bool leftAngleBack,
                            bool rightAngleBack,
                            QString MaterialLength,
                            QString MaterialHeight);

    void save_Passwd_Signal(QString Newpasswd);    

    // 网络料单请求信号 - 长风
    void ChangFeng_Online_List_Signal(QString sendUrl);
    // 网络料单请求信号 - 新格尔
    void XinGeEr_Online_List_Signal(QString sendUrl);
    // 网络料单请求信号 - 速制
    void SuZhi_Online_List_Signal(QString sendUrl);
    // 网络料单请求信号 - 创品
    void ChuangPin_Online_List_Signal(QString UserID,QString sendUrl);

    // 连接PLC成功信号
    void connectToModbusSuccessfully();

    void MaterialHeightObservedValueChanged();

    void MaterialLengthValueChanged();

    void MaterialHeightValueChanged();

    void SawsModeChanged();

    void CutSegmentsChanged();

    void CurrentSegmentsChanged();

    void ObservingStateChanged();

    void ImpactStateChanged();

    void SawsStartStateChanged();

    void SawsOutStateChanged();

    void IO_X12Changed();

    void IO_X13Changed();

    void IO_X14Changed();

    void IO_X15Changed();

    void QML_CurrentPageChanged();

    void LeftAngleFeedBackChanged();

    void RightAngleFeedBackChanged();

    void CurrentLocationValueChanged();

    void OriginValueChanged();

    void MaxCutLengthChanged();

    void Angle45SafeDistanceChanged();

    void Manual_MaterialLengthMaxChanged();

    void Manual_MaterialLengthMinChanged();

    void MechineChangeAngleModeChanged();

    void ExtraLong_MaterialLengthValueChanged();

    void ExtraLong_CompensateValueChanged();

    void ExtraLong_MaterialLengthMaxChanged();

    void ExtraLong_MaterialLengthMinChanged();

    void ExtraShort_MaterialLengthValueChanged();

    void ExtraShort_CompensateValueChanged();

    void ExtraShort_PullBackDistanceChanged();

    void ExtraShort_MaterialLengthMaxChanged();

    void ExtraShort_MaterialLengthMinChanged();

    void Corner_Current_SegmentsChanged();

    void Corner_Worked_SegmentsChanged();

    void Corner_Min_LengthChanged();

    void Corner_Material_LengthChanged();

    void Corner_Cut_CompensateChanged();

    void Corner_LengthChanged();

    void Corner_Set_SegmentsChanged();

    void Corner_Set_ErrChanged();

    void AutoObserveStateChanged();

    void PowerOffModeChanged();

    void Location_SpeedChanged();

    void Manual_SpeedChanged();

    void Impact_Active_TimeChanged();

    void MaterialHeight_ObserveTimeChanged();

    void MaterialHeight_DisplaceMentChanged();

    void LeftSaw_Out_TimeChanged();

    void RightSaw_Out_TimeChanged();

    void DoubleSaws_45_CompensateChanged();

    void SingleSaw_45_CompensateChanged();

    void Blow_TimeChanged();

    void PowerOff_Delay_TimeChanged();

    void Encoder_ValueChanged();

    void PulseNumber_PerRoundChanged();

    void DistanceNumber_PerRoundChanged();

    void TimeOf_ACC_DECChanged();

    void Reverse_Soft_LimitChanged();

    void FindZero_HighSpeedChanged();

    void FindZero_LowSpeedChanged();

    void Brake_OpenTimeChanged();

    void Brake_CloseTimeChanged();

    void ServoTypeChanged();

    void Hold_Safe_DistanceChanged();

    void Front_Hold_LocationChanged();

    void Mid_Hold_Location_Down_LimitChanged();

    void Mid_Hold_Location_Up_LimitChanged();

    void Back_Hold_LocationChanged();

    void IO_Y15Changed();

    void IO_Y16Changed();

    void IO_Y17Changed();

    void Front_Hold_BackOverChanged();

    void Mid_Hold_BackOverChanged();

    void Back_Hold_BackOverChanged();

    void Front_Hold_EnableChanged();

    void Mid_Hold_EnableChanged();

    void Back_Hold_EnableChanged();

    void Front_Hold_ModeChanged();

    void Back_Hold_ModeChanged();

    void Hold_ExistChanged();

    void Location_Compensate_01Changed();

    void Location_Compensate_02Changed();

    void Location_Compensate_03Changed();

    void Location_Compensate_04Changed();

    void Location_Compensate_05Changed();

    void Location_Compensate_06Changed();

    void Location_Compensate_07Changed();

    void Location_Compensate_08Changed();

    void Location_Compensate_09Changed();

    void Location_Compensate_10Changed();

    void Location_Compensate_11Changed();

    void Location_Compensate_12Changed();

    void Location_Compensate_13Changed();

    void Location_Compensate_14Changed();

    void Location_Compensate_15Changed();

    void Location_Compensate_16Changed();

    void Location_Compensate_17Changed();

    void Location_Compensate_18Changed();

    void Location_Compensate_19Changed();

    void Location_Compensate_20Changed();

    void SpecialCompensate_DownLimitChanged();

    void SpecialCompensate_UpLimitChanged();

    void SpecialCompensateValueChanged();



    void SpecialCompensate_StateChanged();

    void AnyLocation_Compensate_DownLimit_01Changed();

    void AnyLocation_Compensate_UpLimit_01Changed();

    void AnyLocation_Compensate_01Changed();

    void AnyLocation_Compensate_DownLimit_02Changed();

    void AnyLocation_Compensate_UpLimit_02Changed();

    void AnyLocation_Compensate_02Changed();

    void AnyLocation_Compensate_DownLimit_03Changed();

    void AnyLocation_Compensate_UpLimit_03Changed();

    void AnyLocation_Compensate_03Changed();

    void AnyLocation_Compensate_DownLimit_04Changed();

    void AnyLocation_Compensate_UpLimit_04Changed();

    void AnyLocation_Compensate_04Changed();

    void AnyLocation_Compensate_DownLimit_05Changed();

    void AnyLocation_Compensate_UpLimit_05Changed();

    void AnyLocation_Compensate_05Changed();

    void AnyLocation_Compensate_DownLimit_06Changed();

    void AnyLocation_Compensate_UpLimit_06Changed();

    void AnyLocation_Compensate_06Changed();

    void AnyLocation_Compensate_DownLimit_07Changed();

    void AnyLocation_Compensate_UpLimit_07Changed();

    void AnyLocation_Compensate_07Changed();

    void AnyLocation_Compensate_DownLimit_08Changed();

    void AnyLocation_Compensate_UpLimit_08Changed();

    void AnyLocation_Compensate_08Changed();

    void AnyLocation_Compensate_DownLimit_09Changed();

    void AnyLocation_Compensate_UpLimit_09Changed();

    void AnyLocation_Compensate_09Changed();

    void AnyLocation_Compensate_DownLimit_10Changed();

    void AnyLocation_Compensate_UpLimit_10Changed();

    void AnyLocation_Compensate_10Changed();

    void AnyLocation_Compensate_DownLimit_11Changed();

    void AnyLocation_Compensate_UpLimit_11Changed();

    void AnyLocation_Compensate_11Changed();

    void AnyLocation_Compensate_DownLimit_12Changed();

    void AnyLocation_Compensate_UpLimit_12Changed();

    void AnyLocation_Compensate_12Changed();

    void AnyLocation_Compensate_DownLimit_13Changed();

    void AnyLocation_Compensate_UpLimit_13Changed();

    void AnyLocation_Compensate_13Changed();

    void AnyLocation_Compensate_DownLimit_14Changed();

    void AnyLocation_Compensate_UpLimit_14Changed();

    void AnyLocation_Compensate_14Changed();

    void AnyLocation_Compensate_DownLimit_15Changed();

    void AnyLocation_Compensate_UpLimit_15Changed();

    void AnyLocation_Compensate_15Changed();

    void AnyLocation_Compensate_DownLimit_16Changed();

    void AnyLocation_Compensate_UpLimit_16Changed();

    void AnyLocation_Compensate_16Changed();

    void AnyLocation_Compensate_DownLimit_17Changed();

    void AnyLocation_Compensate_UpLimit_17Changed();

    void AnyLocation_Compensate_17Changed();

    void AnyLocation_Compensate_DownLimit_18Changed();

    void AnyLocation_Compensate_UpLimit_18Changed();

    void AnyLocation_Compensate_18Changed();

    void AnyLocation_Compensate_DownLimit_19Changed();

    void AnyLocation_Compensate_UpLimit_19Changed();

    void AnyLocation_Compensate_19Changed();

    void AnyLocation_Compensate_DownLimit_20Changed();

    void AnyLocation_Compensate_UpLimit_20Changed();

    void AnyLocation_Compensate_20Changed();

    void AnyLocation_State01Changed();

    void AnyLocation_State02Changed();

    void AnyLocation_State03Changed();

    void AnyLocation_State04Changed();

    void AnyLocation_State05Changed();

    void AnyLocation_State06Changed();

    void AnyLocation_State07Changed();

    void AnyLocation_State08Changed();

    void AnyLocation_State09Changed();

    void AnyLocation_State10Changed();

    void AnyLocation_State11Changed();

    void AnyLocation_State12Changed();

    void AnyLocation_State13Changed();

    void AnyLocation_State14Changed();

    void AnyLocation_State15Changed();

    void AnyLocation_State16Changed();

    void AnyLocation_State17Changed();

    void AnyLocation_State18Changed();

    void AnyLocation_State19Changed();

    void AnyLocation_State20Changed();

    void IO_X0Changed();

    void IO_X1Changed();

    void IO_X2Changed();

    void IO_X3Changed();

    void IO_X5Changed();

    void IO_X6Changed();

    void IO_X7Changed();

    void IO_X10Changed();

    void IO_X11Changed();

    void IO_X16Changed();

    void IO_X17Changed();

    void IO_X20Changed();

    void IO_X21Changed();

    void IO_X22Changed();

    void IO_X23Changed();

    void IO_X24Changed();

    void IO_X25Changed();

    void IO_Y0Changed();

    void IO_Y1Changed();

    void IO_Y2Changed();

    void IO_Y3Changed();

    void IO_Y4Changed();

    void IO_Y5Changed();

    void IO_Y6Changed();

    void IO_Y7Changed();

    void IO_Y10Changed();

    void IO_Y11Changed();

    void IO_Y12Changed();

    void IO_Y13Changed();

    void IO_Y14Changed();

    void IO_Y20Changed();

    void IO_Y21Changed();

    void IO_Y22Changed();

    void IO_Y23Changed();

    void IO_Y24Changed();

    void IO_Y25Changed();

    void OrderNumber_OrderProcessChanged();

    void WorkedCount_01_OrderProcessChanged();

    void WorkedCount_02_OrderProcessChanged();

    void WorkedCount_03_OrderProcessChanged();

    void WorkedCount_04_OrderProcessChanged();

    void WorkedCount_05_OrderProcessChanged();

    void WorkedCount_06_OrderProcessChanged();

    void WorkedCount_07_OrderProcessChanged();

    void WorkedCount_08_OrderProcessChanged();

    void WorkedCount_09_OrderProcessChanged();

    void WorkedCount_10_OrderProcessChanged();

    void WorkedCount_11_OrderProcessChanged();

    void WorkedCount_12_OrderProcessChanged();

    void WorkedCount_13_OrderProcessChanged();

    void WorkedCount_14_OrderProcessChanged();

    void WorkedCount_15_OrderProcessChanged();

    void WorkedCount_16_OrderProcessChanged();

    void WorkedCount_17_OrderProcessChanged();

    void WorkedCount_18_OrderProcessChanged();

    void WorkedCount_19_OrderProcessChanged();

    void WorkedCount_20_OrderProcessChanged();

    void OrderNumber_ListProcessChanged();

    void MaterialLength01_ListProcessChanged();

    void MaterialLength02_ListProcessChanged();

    void MaterialLength03_ListProcessChanged();

    void MaterialLength04_ListProcessChanged();

    void MaterialLength05_ListProcessChanged();

    void MaterialLength06_ListProcessChanged();

    void MaterialLength07_ListProcessChanged();

    void MaterialLength08_ListProcessChanged();

    void MaterialLength09_ListProcessChanged();

    void MaterialLength10_ListProcessChanged();

    void MaterialLength11_ListProcessChanged();

    void MaterialLength12_ListProcessChanged();

    void MaterialLength13_ListProcessChanged();

    void MaterialLength14_ListProcessChanged();

    void MaterialLength15_ListProcessChanged();

    void MaterialLength16_ListProcessChanged();

    void MaterialLength17_ListProcessChanged();

    void MaterialLength18_ListProcessChanged();

    void MaterialLength19_ListProcessChanged();

    void MaterialLength20_ListProcessChanged();

    void LeftAngle_01_ListProcessChanged();

    void RightAngle_01_ListProcessChanged();

    void LeftAngle_02_ListProcessChanged();

    void RightAngle_02_ListProcessChanged();

    void LeftAngle_03_ListProcessChanged();

    void RightAngle_03_ListProcessChanged();

    void LeftAngle_04_ListProcessChanged();

    void RightAngle_04_ListProcessChanged();

    void LeftAngle_05_ListProcessChanged();

    void RightAngle_05_ListProcessChanged();

    void LeftAngle_06_ListProcessChanged();

    void RightAngle_06_ListProcessChanged();

    void LeftAngle_07_ListProcessChanged();

    void RightAngle_07_ListProcessChanged();

    void LeftAngle_08_ListProcessChanged();

    void RightAngle_08_ListProcessChanged();

    void LeftAngle_09_ListProcessChanged();

    void RightAngle_09_ListProcessChanged();

    void LeftAngle_10_ListProcessChanged();

    void RightAngle_10_ListProcessChanged();

    void LeftAngle_11_ListProcessChanged();

    void RightAngle_11_ListProcessChanged();

    void LeftAngle_12_ListProcessChanged();

    void RightAngle_12_ListProcessChanged();

    void LeftAngle_13_ListProcessChanged();

    void RightAngle_13_ListProcessChanged();

    void LeftAngle_14_ListProcessChanged();

    void RightAngle_14_ListProcessChanged();

    void LeftAngle_15_ListProcessChanged();

    void RightAngle_15_ListProcessChanged();

    void LeftAngle_16_ListProcessChanged();

    void RightAngle_16_ListProcessChanged();

    void LeftAngle_17_ListProcessChanged();

    void RightAngle_17_ListProcessChanged();

    void LeftAngle_18_ListProcessChanged();

    void RightAngle_18_ListProcessChanged();

    void LeftAngle_19_ListProcessChanged();

    void RightAngle_19_ListProcessChanged();

    void LeftAngle_20_ListProcessChanged();

    void RightAngle_20_ListProcessChanged();

    void CutCount_01_ListProcessChanged();

    void CutCount_02_ListProcessChanged();

    void CutCount_03_ListProcessChanged();

    void CutCount_04_ListProcessChanged();

    void CutCount_05_ListProcessChanged();

    void CutCount_06_ListProcessChanged();

    void CutCount_07_ListProcessChanged();

    void CutCount_08_ListProcessChanged();

    void CutCount_09_ListProcessChanged();

    void CutCount_10_ListProcessChanged();

    void CutCount_11_ListProcessChanged();

    void CutCount_12_ListProcessChanged();

    void CutCount_13_ListProcessChanged();

    void CutCount_14_ListProcessChanged();

    void CutCount_15_ListProcessChanged();

    void CutCount_16_ListProcessChanged();

    void CutCount_17_ListProcessChanged();

    void CutCount_18_ListProcessChanged();

    void CutCount_19_ListProcessChanged();

    void CutCount_20_ListProcessChanged();

    void WorkedCount_01_ListProcessChanged();

    void WorkedCount_02_ListProcessChanged();

    void WorkedCount_03_ListProcessChanged();

    void WorkedCount_04_ListProcessChanged();

    void WorkedCount_05_ListProcessChanged();

    void WorkedCount_06_ListProcessChanged();

    void WorkedCount_07_ListProcessChanged();

    void WorkedCount_08_ListProcessChanged();

    void WorkedCount_09_ListProcessChanged();

    void WorkedCount_10_ListProcessChanged();

    void WorkedCount_11_ListProcessChanged();

    void WorkedCount_12_ListProcessChanged();

    void WorkedCount_13_ListProcessChanged();

    void WorkedCount_14_ListProcessChanged();

    void WorkedCount_15_ListProcessChanged();

    void WorkedCount_16_ListProcessChanged();

    void WorkedCount_17_ListProcessChanged();

    void WorkedCount_18_ListProcessChanged();

    void WorkedCount_19_ListProcessChanged();

    void WorkedCount_20_ListProcessChanged();

    void Location_Rely_ListProcessChanged();

    void Warning_JerkChanged();

    void Warning_ServoChanged();

    void Warning_Front_Soft_Limit_OverChanged();

    void Warning_Back_Soft_Limit_OverChanged();

    void M_42Changed();

    void M_43Changed();

    void M_47Changed();

    void M_52Changed();

    void M_56Changed();

    void M_57Changed();

    void M_58Changed();

    void M_59Changed();

    void M_64Changed();

    void M_68Changed();

    void M_69Changed();

    void M_73Changed();

    void M_76Changed();

    void M_77Changed();

    void M_80Changed();

    void M_134Changed();

    void M_137Changed();

    void M_143Changed();

    void M_149Changed();

    void M_152Changed();

    void M_153Changed();

    void M_159Changed();

    void M_164Changed();

    void M_170Changed();

    void M_196Changed();

    void M_197Changed();

    void M_250Changed();

    void M_251Changed();

    void M_252Changed();

    void DoubleSaws_StartDelayChanged();

    void M_528Changed();

    void M_510Changed();

    void M_400Changed();

    void M_398Changed();

    void M_397Changed();

    void M_500Changed();

    void M_501Changed();

    void M_393Changed();

    void M_502Changed();

    void M_503Changed();

    void M_529Changed();

    void M_530Changed();

    void M_399Changed();

    void M_511Changed();

    void LockMechine_FlagChanged();

    void Wait_Worked_MaterialLengthChanged();

    void PLC_Customer_NumberChanged();

    void PLC_Order_NumberChanged();

    void QR_Code_CurrentTypeChanged();

    void Input_PasswdChanged();

    void Circle_Runing_StateChanged();

    void Circle_ModeChanged();

    void Order_Number_CircleChanged();

    void M_505Changed();

    void M_506Changed();

    void M_507Changed();

    void Tiny_Move_DistanceChanged();

    void Left_Pull_DelayChanged();


    void NetWork_CurrentPagesChanged();

    void NetWork_CountPageChanged();

    void PLC_CurrentStateChanged();

    void NetWork_M61Changed();

    void NetWork_M96Changed();

    void NetWork_M97Changed();

public slots:



    // 轮询PLC数据槽函数
    void read_PLC_Parameters_Slots();

    // 接收扫码枪数据
    void on_Scanner_Read_Result_Slots(const QByteArray& result);


private:

    static ModbusControl* m_instance;

    static QMutex m_mutex;

    // ModBus 通讯对象
    QModbusRtuSerialClient* m_Modbus;



    QTime currentTime;
    QDate currentDate;

    int m_QML_CurrentPage;

    QString m_MaterialHeightObservedValue;
    QString m_CurrentLocationValue;
    QString m_MaterialLengthValue;
    QString m_MaterialHeightValue;
    QString m_SawsMode;
    QString m_CutSegments;
    QString m_CurrentSegments;
    QString m_OriginValue;
    QString m_MaxCutLength;
    QString m_Angle45SafeDistance;
    QString m_Manual_MaterialLengthMax;
    QString m_Manual_MaterialLengthMin;
    bool m_MechineChangeAngleMode;
    bool m_ObservingState;
    bool m_ImpactState;
    bool m_SawsStartState;
    bool m_SawsOutState;
    bool m_LeftAngleFeedBack;
    bool m_RightAngleFeedBack;
    bool m_IO_X12;
    bool m_IO_X13;
    bool m_IO_X14;
    bool m_IO_X15;

    QString m_ExtraLong_MaterialLengthValue;
    QString m_ExtraLong_CompensateValue;
    QString m_ExtraLong_MaterialLengthMax;
    QString m_ExtraLong_MaterialLengthMin;
    QString m_ExtraShort_MaterialLengthValue;
    QString m_ExtraShort_CompensateValue;
    QString m_ExtraShort_PullBackDistance;
    QString m_ExtraShort_MaterialLengthMax;
    QString m_ExtraShort_MaterialLengthMin;
    QString m_Corner_Current_Segments;
    QString m_Corner_Worked_Segments;
    QString m_Corner_Min_Length;
    QString m_Corner_Material_Length;
    QString m_Corner_Cut_Compensate;
    QString m_Corner_Length;
    QString m_Corner_Set_Segments;
    bool m_Corner_Set_Err;
    bool m_AutoObserveState;
    bool m_PowerOffMode;
    QString m_Location_Speed;
    QString m_Manual_Speed;
    QString m_Impact_Active_Time;
    QString m_MaterialHeight_ObserveTime;
    QString m_MaterialHeight_DisplaceMent;
    QString m_LeftSaw_Out_Time;
    QString m_RightSaw_Out_Time;
    QString m_DoubleSaws_45_Compensate;
    QString m_SingleSaw_45_Compensate;
    QString m_Blow_Time;
    QString m_PowerOff_Delay_Time;
    QString m_Encoder_Value;
    QString m_PulseNumber_PerRound;
    QString m_DistanceNumber_PerRound;
    QString m_TimeOf_ACC_DEC;
    QString m_Reverse_Soft_Limit;
    QString m_FindZero_HighSpeed;
    QString m_FindZero_LowSpeed;
    QString m_Brake_OpenTime;
    QString m_Brake_CloseTime;
    bool m_ServoType;
    QString m_Hold_Safe_Distance;
    QString m_Front_Hold_Location;
    QString m_Mid_Hold_Location_Down_Limit;
    QString m_Mid_Hold_Location_Up_Limit;
    QString m_Back_Hold_Location;
    bool m_IO_Y15;
    bool m_IO_Y16;
    bool m_IO_Y17;
    bool m_Front_Hold_BackOver;
    bool m_Mid_Hold_BackOver;
    bool m_Back_Hold_BackOver;
    bool m_Front_Hold_Enable;
    bool m_Mid_Hold_Enable;
    bool m_Back_Hold_Enable;
    bool m_Front_Hold_Mode;
    bool m_Back_Hold_Mode;
    bool m_Hold_Exist;
    QString m_Location_Compensate_01;
    QString m_Location_Compensate_02;
    QString m_Location_Compensate_03;
    QString m_Location_Compensate_04;
    QString m_Location_Compensate_05;
    QString m_Location_Compensate_06;
    QString m_Location_Compensate_07;
    QString m_Location_Compensate_08;
    QString m_Location_Compensate_09;
    QString m_Location_Compensate_10;
    QString m_Location_Compensate_11;
    QString m_Location_Compensate_12;
    QString m_Location_Compensate_13;
    QString m_Location_Compensate_14;
    QString m_Location_Compensate_15;
    QString m_Location_Compensate_16;
    QString m_Location_Compensate_17;
    QString m_Location_Compensate_18;
    QString m_Location_Compensate_19;
    QString m_Location_Compensate_20;
    QString m_SpecialCompensate_DownLimit;
    QString m_SpecialCompensate_UpLimit;
    QString m_SpecialCompensateValue;
    bool m_SpecialCompensate_State;
    QString m_AnyLocation_Compensate_DownLimit_01;
    QString m_AnyLocation_Compensate_UpLimit_01;
    QString m_AnyLocation_Compensate_01;
    QString m_AnyLocation_Compensate_DownLimit_02;
    QString m_AnyLocation_Compensate_UpLimit_02;
    QString m_AnyLocation_Compensate_02;
    QString m_AnyLocation_Compensate_DownLimit_03;
    QString m_AnyLocation_Compensate_UpLimit_03;
    QString m_AnyLocation_Compensate_03;
    QString m_AnyLocation_Compensate_DownLimit_04;
    QString m_AnyLocation_Compensate_UpLimit_04;
    QString m_AnyLocation_Compensate_04;
    QString m_AnyLocation_Compensate_DownLimit_05;
    QString m_AnyLocation_Compensate_UpLimit_05;
    QString m_AnyLocation_Compensate_05;
    QString m_AnyLocation_Compensate_DownLimit_06;
    QString m_AnyLocation_Compensate_UpLimit_06;
    QString m_AnyLocation_Compensate_06;
    QString m_AnyLocation_Compensate_DownLimit_07;
    QString m_AnyLocation_Compensate_UpLimit_07;
    QString m_AnyLocation_Compensate_07;
    QString m_AnyLocation_Compensate_DownLimit_08;
    QString m_AnyLocation_Compensate_UpLimit_08;
    QString m_AnyLocation_Compensate_08;
    QString m_AnyLocation_Compensate_DownLimit_09;
    QString m_AnyLocation_Compensate_UpLimit_09;
    QString m_AnyLocation_Compensate_09;
    QString m_AnyLocation_Compensate_DownLimit_10;
    QString m_AnyLocation_Compensate_UpLimit_10;
    QString m_AnyLocation_Compensate_10;
    QString m_AnyLocation_Compensate_DownLimit_11;
    QString m_AnyLocation_Compensate_UpLimit_11;
    QString m_AnyLocation_Compensate_11;
    QString m_AnyLocation_Compensate_DownLimit_12;
    QString m_AnyLocation_Compensate_UpLimit_12;
    QString m_AnyLocation_Compensate_12;
    QString m_AnyLocation_Compensate_DownLimit_13;
    QString m_AnyLocation_Compensate_UpLimit_13;
    QString m_AnyLocation_Compensate_13;
    QString m_AnyLocation_Compensate_DownLimit_14;
    QString m_AnyLocation_Compensate_UpLimit_14;
    QString m_AnyLocation_Compensate_14;
    QString m_AnyLocation_Compensate_DownLimit_15;
    QString m_AnyLocation_Compensate_UpLimit_15;
    QString m_AnyLocation_Compensate_15;
    QString m_AnyLocation_Compensate_DownLimit_16;
    QString m_AnyLocation_Compensate_UpLimit_16;
    QString m_AnyLocation_Compensate_16;
    QString m_AnyLocation_Compensate_DownLimit_17;
    QString m_AnyLocation_Compensate_UpLimit_17;
    QString m_AnyLocation_Compensate_17;
    QString m_AnyLocation_Compensate_DownLimit_18;
    QString m_AnyLocation_Compensate_UpLimit_18;
    QString m_AnyLocation_Compensate_18;
    QString m_AnyLocation_Compensate_DownLimit_19;
    QString m_AnyLocation_Compensate_UpLimit_19;
    QString m_AnyLocation_Compensate_19;
    QString m_AnyLocation_Compensate_DownLimit_20;
    QString m_AnyLocation_Compensate_UpLimit_20;
    QString m_AnyLocation_Compensate_20;
    bool m_AnyLocation_State01;
    bool m_AnyLocation_State02;
    bool m_AnyLocation_State03;
    bool m_AnyLocation_State04;
    bool m_AnyLocation_State05;
    bool m_AnyLocation_State06;
    bool m_AnyLocation_State07;
    bool m_AnyLocation_State08;
    bool m_AnyLocation_State09;
    bool m_AnyLocation_State10;
    bool m_AnyLocation_State11;
    bool m_AnyLocation_State12;
    bool m_AnyLocation_State13;
    bool m_AnyLocation_State14;
    bool m_AnyLocation_State15;
    bool m_AnyLocation_State16;
    bool m_AnyLocation_State17;
    bool m_AnyLocation_State18;
    bool m_AnyLocation_State19;
    bool m_AnyLocation_State20;
    bool m_IO_X0;
    bool m_IO_X1;
    bool m_IO_X2;
    bool m_IO_X3;
    bool m_IO_X5;
    bool m_IO_X6;
    bool m_IO_X7;
    bool m_IO_X10;
    bool m_IO_X11;
    bool m_IO_X16;
    bool m_IO_X17;
    bool m_IO_X20;
    bool m_IO_X21;
    bool m_IO_X22;
    bool m_IO_X23;
    bool m_IO_X24;
    bool m_IO_X25;
    bool m_IO_Y0;
    bool m_IO_Y1;
    bool m_IO_Y2;
    bool m_IO_Y3;
    bool m_IO_Y4;
    bool m_IO_Y5;
    bool m_IO_Y6;
    bool m_IO_Y7;
    bool m_IO_Y10;
    bool m_IO_Y11;
    bool m_IO_Y12;
    bool m_IO_Y13;
    bool m_IO_Y14;
    bool m_IO_Y20;
    bool m_IO_Y21;
    bool m_IO_Y22;
    bool m_IO_Y23;
    bool m_IO_Y24;
    bool m_IO_Y25;
    QString m_OrderNumber_OrderProcess;
    QString m_WorkedCount_01_OrderProcess;
    QString m_WorkedCount_02_OrderProcess;
    QString m_WorkedCount_03_OrderProcess;
    QString m_WorkedCount_04_OrderProcess;
    QString m_WorkedCount_05_OrderProcess;
    QString m_WorkedCount_06_OrderProcess;
    QString m_WorkedCount_07_OrderProcess;
    QString m_WorkedCount_08_OrderProcess;
    QString m_WorkedCount_09_OrderProcess;
    QString m_WorkedCount_10_OrderProcess;
    QString m_WorkedCount_11_OrderProcess;
    QString m_WorkedCount_12_OrderProcess;
    QString m_WorkedCount_13_OrderProcess;
    QString m_WorkedCount_14_OrderProcess;
    QString m_WorkedCount_15_OrderProcess;
    QString m_WorkedCount_16_OrderProcess;
    QString m_WorkedCount_17_OrderProcess;
    QString m_WorkedCount_18_OrderProcess;
    QString m_WorkedCount_19_OrderProcess;
    QString m_WorkedCount_20_OrderProcess;
    QString m_OrderNumber_ListProcess;
    QString m_MaterialLength01_ListProcess;
    QString m_MaterialLength02_ListProcess;
    QString m_MaterialLength03_ListProcess;
    QString m_MaterialLength04_ListProcess;
    QString m_MaterialLength05_ListProcess;
    QString m_MaterialLength06_ListProcess;
    QString m_MaterialLength07_ListProcess;
    QString m_MaterialLength08_ListProcess;
    QString m_MaterialLength09_ListProcess;
    QString m_MaterialLength10_ListProcess;
    QString m_MaterialLength11_ListProcess;
    QString m_MaterialLength12_ListProcess;
    QString m_MaterialLength13_ListProcess;
    QString m_MaterialLength14_ListProcess;
    QString m_MaterialLength15_ListProcess;
    QString m_MaterialLength16_ListProcess;
    QString m_MaterialLength17_ListProcess;
    QString m_MaterialLength18_ListProcess;
    QString m_MaterialLength19_ListProcess;
    QString m_MaterialLength20_ListProcess;
    QString m_LeftAngle_01_ListProcess;
    QString m_RightAngle_01_ListProcess;
    QString m_LeftAngle_02_ListProcess;
    QString m_RightAngle_02_ListProcess;
    QString m_LeftAngle_03_ListProcess;
    QString m_RightAngle_03_ListProcess;
    QString m_LeftAngle_04_ListProcess;
    QString m_RightAngle_04_ListProcess;
    QString m_LeftAngle_05_ListProcess;
    QString m_RightAngle_05_ListProcess;
    QString m_LeftAngle_06_ListProcess;
    QString m_RightAngle_06_ListProcess;
    QString m_LeftAngle_07_ListProcess;
    QString m_RightAngle_07_ListProcess;
    QString m_LeftAngle_08_ListProcess;
    QString m_RightAngle_08_ListProcess;
    QString m_LeftAngle_09_ListProcess;
    QString m_RightAngle_09_ListProcess;
    QString m_LeftAngle_10_ListProcess;
    QString m_RightAngle_10_ListProcess;
    QString m_LeftAngle_11_ListProcess;
    QString m_RightAngle_11_ListProcess;
    QString m_LeftAngle_12_ListProcess;
    QString m_RightAngle_12_ListProcess;
    QString m_LeftAngle_13_ListProcess;
    QString m_RightAngle_13_ListProcess;
    QString m_LeftAngle_14_ListProcess;
    QString m_RightAngle_14_ListProcess;
    QString m_LeftAngle_15_ListProcess;
    QString m_RightAngle_15_ListProcess;
    QString m_LeftAngle_16_ListProcess;
    QString m_RightAngle_16_ListProcess;
    QString m_LeftAngle_17_ListProcess;
    QString m_RightAngle_17_ListProcess;
    QString m_LeftAngle_18_ListProcess;
    QString m_RightAngle_18_ListProcess;
    QString m_LeftAngle_19_ListProcess;
    QString m_RightAngle_19_ListProcess;
    QString m_LeftAngle_20_ListProcess;
    QString m_RightAngle_20_ListProcess;
    QString m_CutCount_01_ListProcess;
    QString m_CutCount_02_ListProcess;
    QString m_CutCount_03_ListProcess;
    QString m_CutCount_04_ListProcess;
    QString m_CutCount_05_ListProcess;
    QString m_CutCount_06_ListProcess;
    QString m_CutCount_07_ListProcess;
    QString m_CutCount_08_ListProcess;
    QString m_CutCount_09_ListProcess;
    QString m_CutCount_10_ListProcess;
    QString m_CutCount_11_ListProcess;
    QString m_CutCount_12_ListProcess;
    QString m_CutCount_13_ListProcess;
    QString m_CutCount_14_ListProcess;
    QString m_CutCount_15_ListProcess;
    QString m_CutCount_16_ListProcess;
    QString m_CutCount_17_ListProcess;
    QString m_CutCount_18_ListProcess;
    QString m_CutCount_19_ListProcess;
    QString m_CutCount_20_ListProcess;
    QString m_WorkedCount_01_ListProcess;
    QString m_WorkedCount_02_ListProcess;
    QString m_WorkedCount_03_ListProcess;
    QString m_WorkedCount_04_ListProcess;
    QString m_WorkedCount_05_ListProcess;
    QString m_WorkedCount_06_ListProcess;
    QString m_WorkedCount_07_ListProcess;
    QString m_WorkedCount_08_ListProcess;
    QString m_WorkedCount_09_ListProcess;
    QString m_WorkedCount_10_ListProcess;
    QString m_WorkedCount_11_ListProcess;
    QString m_WorkedCount_12_ListProcess;
    QString m_WorkedCount_13_ListProcess;
    QString m_WorkedCount_14_ListProcess;
    QString m_WorkedCount_15_ListProcess;
    QString m_WorkedCount_16_ListProcess;
    QString m_WorkedCount_17_ListProcess;
    QString m_WorkedCount_18_ListProcess;
    QString m_WorkedCount_19_ListProcess;
    QString m_WorkedCount_20_ListProcess;
    bool m_Location_Rely_ListProcess;
    bool m_Warning_Jerk;
    bool m_Warning_Servo;
    bool m_Warning_Front_Soft_Limit_Over;
    bool m_Warning_Back_Soft_Limit_Over;


    // 正在报警的信息
    QVector<bool>  m_warnVector;
    // 新出现的报警信息
    QVector<bool>  m_newWarnVector;
    // 顶层滚动信息
    QString m_warnInfo;
    // 接收报警信息的详细信息
    QMap<int,QString> m_warnDetail;

    bool m_M_42 = false;
    bool m_M_43 = false;
    bool m_M_47 = false;
    bool m_M_52 = false;
    bool m_M_56 = false;
    bool m_M_57 = false;
    bool m_M_58 = false;
    bool m_M_59 = false;
    bool m_M_64 = false;
    bool m_M_68 = false;
    bool m_M_69 = false;
    bool m_M_73 = false;
    bool m_M_76 = false;
    bool m_M_77 = false;
    bool m_M_80 = false;
    bool m_M_134 = false;
    bool m_M_137 = false;
    bool m_M_143 = false;
    bool m_M_149 = false;
    bool m_M_152 = false;
    bool m_M_153 = false;
    bool m_M_159 = false;
    bool m_M_164 = false;
    bool m_M_170 = false;
    bool m_M_196 = false;
    bool m_M_197 = false;
    bool m_M_250 = false;
    bool m_M_251 = false;
    bool m_M_252 = false;
    QString m_DoubleSaws_StartDelay;
    bool m_M_528;
    bool m_M_510;
    bool m_M_400;
    bool m_M_398;
    bool m_M_397;
    bool m_M_500;
    bool m_M_501;
    bool m_M_393;
    bool m_M_502;
    bool m_M_503;
    bool m_M_529;
    bool m_M_530;
    bool m_M_399;
    bool m_M_511;
    bool m_LockMechine_Flag;
    QString m_Wait_Worked_MaterialLength;
    QString m_PLC_Customer_Number;
    QString m_PLC_Order_Number;
    int m_QR_Code_CurrentType;
    QString m_Input_Passwd;
    QString m_Circle_Runing_State;
    QString m_Circle_Mode;
    QString m_Order_Number_Circle;
    bool m_M_505;
    bool m_M_506;
    bool m_M_507;
    QString m_Tiny_Move_Distance;
    QString m_Left_Pull_Delay;
    QString m_NetWork_CurrentPages;
    QString m_NetWork_CountPage;

    bool m_NetWork_M61;
    bool m_NetWork_M96;
    bool m_NetWork_M97;
};

#endif // MODBUSCONTROL_H
